From 33058f2b292b3a581333bdfb21b8f671898c5060 Mon Sep 17 00:00:00 2001 From: Peter Bengtsson Date: Tue, 8 Dec 2020 14:40:17 -0500 Subject: initial commit --- .../reference/errors/not_defined/index.html | 72 ++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 files/ja/web/javascript/reference/errors/not_defined/index.html (limited to 'files/ja/web/javascript/reference/errors/not_defined/index.html') diff --git a/files/ja/web/javascript/reference/errors/not_defined/index.html b/files/ja/web/javascript/reference/errors/not_defined/index.html new file mode 100644 index 0000000000..3dc0feddee --- /dev/null +++ b/files/ja/web/javascript/reference/errors/not_defined/index.html @@ -0,0 +1,72 @@ +--- +title: 'ReferenceError: "x" is not defined' +slug: Web/JavaScript/Reference/Errors/Not_defined +tags: + - Error + - JavaScript + - ReferenceError +translation_of: Web/JavaScript/Reference/Errors/Not_defined +--- +
{{jsSidebar("Errors")}}
+ +

JavaScript の例外 "variable is not defined" は、どこかで参照している変数が存在しない場合に発生します。

+ +

メッセージ

+ +
ReferenceError: "x" is not defined
+
+ +

エラー種別

+ +

{{jsxref("ReferenceError")}}.

+ +

原因

+ +

どこかで存在しない変数を参照しています。この変数を宣言しておくか、現在のスクリプトまたはスコープで利用可能であることを確認する必要があります。

+ +
+

メモ: ライブラリ (jQuery など) を読み込むとき、ライブラリの変数、例えば "$" にアクセスする前に読み込みが行われるかを確認してください。ライブラリを読み込む {{HTMLElement("script")}} 要素は、それを使用するコードよりも前に置いてください。

+
+ +

+ +

宣言されていない変数

+ +
foo.substring(1); // ReferenceError: foo is not defined
+
+ +

"foo" と言う変数はどこにも宣言されていません。これは文字列である必要があり、それならば {{jsxref("String.prototype.substring()")}} メソッドが動作します。

+ +
var foo = 'bar';
+foo.substring(1); // "ar"
+ +

スコープの間違い

+ +

変数は現在の実行コンテキストで利用可能である必要があります。関数の中で定義された変数は、その関数のスコープ内でしか定義されていないので、関数の外のどこからもアクセスできません。

+ +
function numbers() {
+  var num1 = 2,
+      num2 = 3;
+  return num1 + num2;
+}
+
+console.log(num1); // ReferenceError num1 is not defined.
+ +

しかし、関数はそれが定義されたスコープ内で定義されたすべての変数と関数にアクセスすることができます。言い換えれば、グローバルスコープで定義された関数は、グローバルスコープ内で定義されたすべての変数にアクセスすることができます。/p>

+ +
var num1 = 2,
+    num2 = 3;
+
+function numbers() {
+  return num1 + num2;
+}
+
+console.log(numbers()); // 5
+ +

関連情報

+ + -- cgit v1.2.3-54-g00ecf