
開発者ツール(DevTools)を確認する
ティラノスタジオで「プレビュー」→「ゲーム再生」を選択し、「デバッグを表示する」にチェックを入れてゲームを再生してください。
ゲーム画面と一緒に、開発者ツールが表示されます。
「Uncaught TypeError: 変数名 is not a function」
だいたい上の画像のようにエラーが表示されます。
下の方はエラーがでた箇所によって変わりますが、一番上に「Uncaught TypeError: 変数名 is not a function」と表示されていたらこのエラーです。
「変数名」の部分には、変数名が表示されます。
「Uncaught TypeError」とは
直訳:補足されないタイプエラー
超訳:タイプが間違っています!
変数には「タイプ(型)」というものがあります。
「0」なら数値型、「"abc"」なら文字列型、「true」ならブール型、みたいな感じです。
JavaScriptは大雑把な言語なので、違う型の変数を同時に扱ったりしてもあんまりエラーは出ません。
が、無茶なことをしようとするとエラーが出ます。
無茶なことについては次の項で。
「0」なら数値型、「"abc"」なら文字列型、「true」ならブール型、みたいな感じです。
JavaScriptは大雑把な言語なので、違う型の変数を同時に扱ったりしてもあんまりエラーは出ません。
が、無茶なことをしようとするとエラーが出ます。
無茶なことについては次の項で。
「変数名 is not a function」とは
直訳:「変数名」は関数ではありません
超訳:「変数名」は関数じゃないので関数みたいには使えないよ!
関数【かん‐すう】
与えられた文字や数値に対し、定められた処理を行って結果を返す機能のこと。表計算ソフトやデータベースソフト、プログラミング言語などで利用される。
「ASCII.jpデジタル用語辞典」より
関数とは、何らかの処理を行うものです。
ティラノスクリプトのタグとかも、JavaScriptのいろんな関数を組み合わせて作られています。
JavaScriptの変数と関数は、書き方が非常によく似ているので、ちょっと書き間違えただけで「変数なのに関数として使おうとしている」ということが起きます。
そういう場合に、このエラーが出ます。
ティラノスクリプトのタグとかも、JavaScriptのいろんな関数を組み合わせて作られています。
JavaScriptの変数と関数は、書き方が非常によく似ているので、ちょっと書き間違えただけで「変数なのに関数として使おうとしている」ということが起きます。
そういう場合に、このエラーが出ます。
エラーを解決する
まずはエラーが出ている箇所を確認しましょう。
- ティラノスタジオの「プレビュー」→「コンソール」を選択します。
- エラーが出ている部分が灰色にハイライト表示されています。
[iscript]~[endscript]内のJavaScriptにエラーがある場合、[endscirpt]の部分がハイライト表示されます。 - 次に、開発者ツールのConsoleタブを確認します。
赤線部分の「:」の右側の数字が、[iscript]~[endscript]内での行番号です。
この場合だと1行目です。 - 実際のスクリプトの1行目を見てみます。
「tf.test」のうしろに、「()」(半角カッコ)が書かれていますね。
実は、「変数名」の後ろに「()」を付けてしまうと、JavaScriptでは「関数」という扱いになってしまうのです。
ここでは、変数である「tf.test」を関数として実行しようとしたために、「「tf.test」は関数じゃないよ」というエラーが出たのです。
「tf.test」は変数なので、カッコを外しましょう。
- エラーの原因がわかったら、書き直してゲーム再生してみましょう。
いちばんやさしいJavaScriptの教本第2版 ECMAScript 2017(ES8)対応 人気 [ 岩田宇史 ] 価格:2,420円 |

スラスラ読めるJavaScriptふりがなプログラミング [ 及川卓也 ] 価格:2,035円 |
