From ba94a1c97f12bb71cf59c2062d546e74d948cd4f Mon Sep 17 00:00:00 2001 From: Masahiro FUJIMOTO Date: Fri, 18 Jun 2021 02:57:03 +0900 Subject: Deprecated_caller_or_arguments_usage エラーを更新 (#1138) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 2021/02/20 時点の英語版に同期 --- .../index.html | 47 ++++++++++++---------- 1 file changed, 26 insertions(+), 21 deletions(-) (limited to 'files/ja/web/javascript/reference/errors') diff --git a/files/ja/web/javascript/reference/errors/deprecated_caller_or_arguments_usage/index.html b/files/ja/web/javascript/reference/errors/deprecated_caller_or_arguments_usage/index.html index 74bbfce1a4..d64f87ae03 100644 --- a/files/ja/web/javascript/reference/errors/deprecated_caller_or_arguments_usage/index.html +++ b/files/ja/web/javascript/reference/errors/deprecated_caller_or_arguments_usage/index.html @@ -2,36 +2,41 @@ title: 'ReferenceError: deprecated caller or arguments usage' slug: Web/JavaScript/Reference/Errors/Deprecated_caller_or_arguments_usage tags: - - Errors - - JavaScript - - Strict Mode - - Warning +- Error +- Errors +- JavaScript +- Strict Mode +- Warning translation_of: Web/JavaScript/Reference/Errors/Deprecated_caller_or_arguments_usage ---
{{jsSidebar("Errors")}}
-

メッセージ

+

JavaScript の strict モード独自の例外 "deprecated caller or arguments usage" は、非推奨の {{jsxref("Function.caller")}} または {{jsxref("Function.arguments")}} プロパティが使用されたときに発生します。

-
Warning: ReferenceError: deprecated caller usage (Firefox)
+

エラーメッセージ

+ +
TypeError: 'arguments', 'callee' and 'caller' are restricted function properties and cannot be accessed in this context (Edge)
+Warning: ReferenceError: deprecated caller usage (Firefox)
 Warning: ReferenceError: deprecated arguments usage (Firefox)
 TypeError: 'callee' and 'caller' cannot be accessed in strict mode. (Safari)
 
-

エラータイプ

+

エラーの種類

-

strict モードでのみ、{{jsxref("ReferenceError")}} の警告が発生します。JavaScript の実行は、停止しません。

+

strict モードでのみ、{{jsxref("ReferenceError")}} の警告が発生します。 JavaScript の実行は、停止しません。

-

何がうまくいかなかったのか?

+

エラーの原因

-

strict モード で、{{jsxref("Function.caller")}} か {{jsxref("Function.arguments")}} が使われていますが、それらは使用すべきではありません。なぜならば、それらは関数の呼び出し元をリークし、非標準で、最適化が困難、かつ性能に対して有害な機能のため、非推奨です。

+

strict モード で、 {{jsxref("Function.caller")}} または {{jsxref("Function.arguments")}} が使われていますが、それらは使用すべきではありません。呼び出し元を漏洩させること、標準外であること、最適化が困難になること、性能に悪影響を与える機能であるため、非推奨になりました。

-

+

-

非推奨の function.callerarguments.callee.caller

+

非推奨の + function.caller または arguments.callee.caller

-

{{jsxref("Function.caller")}} と arguments.callee.caller は非推奨です(詳細は参照記事を見てください)。

+

{{jsxref("Function.caller")}} と arguments.callee.caller は非推奨です (詳細は参照記事を見てください)。

-
"use strict";
+
'use strict';
 
 function myFunc() {
   if (myFunc.caller == null) {
@@ -47,9 +52,9 @@ myFunc();
 
 

Function.arguments

-

{{jsxref("Function.arguments")}} は非推奨です(詳細は参照記事を見てください)。

+

{{jsxref("Function.arguments")}} は非推奨です (詳細は参照記事を見てください)。

-
"use strict";
+
'use strict';
 
 function f(n) { g(n - 1); }
 
@@ -65,11 +70,11 @@ console.log('returned: ' + g.arguments);
 // Warning: ReferenceError: deprecated arguments usage
 
-

関連項目

+

関連情報

-- cgit v1.2.3-54-g00ecf