diff options
| author | Peter Bengtsson <mail@peterbe.com> | 2020-12-08 14:40:17 -0500 |
|---|---|---|
| committer | Peter Bengtsson <mail@peterbe.com> | 2020-12-08 14:40:17 -0500 |
| commit | 33058f2b292b3a581333bdfb21b8f671898c5060 (patch) | |
| tree | 51c3e392513ec574331b2d3f85c394445ea803c6 /files/ja/web/javascript/reference/errors/deprecated_expression_closures | |
| parent | 8b66d724f7caf0157093fb09cfec8fbd0c6ad50a (diff) | |
| download | translated-content-33058f2b292b3a581333bdfb21b8f671898c5060.tar.gz translated-content-33058f2b292b3a581333bdfb21b8f671898c5060.tar.bz2 translated-content-33058f2b292b3a581333bdfb21b8f671898c5060.zip | |
initial commit
Diffstat (limited to 'files/ja/web/javascript/reference/errors/deprecated_expression_closures')
| -rw-r--r-- | files/ja/web/javascript/reference/errors/deprecated_expression_closures/index.html | 82 |
1 files changed, 82 insertions, 0 deletions
diff --git a/files/ja/web/javascript/reference/errors/deprecated_expression_closures/index.html b/files/ja/web/javascript/reference/errors/deprecated_expression_closures/index.html new file mode 100644 index 0000000000..65c4262c61 --- /dev/null +++ b/files/ja/web/javascript/reference/errors/deprecated_expression_closures/index.html @@ -0,0 +1,82 @@ +--- +title: 'Warning: expression closures are deprecated' +slug: Web/JavaScript/Reference/Errors/Deprecated_expression_closures +tags: + - JavaScript + - Warning + - エラー + - 警告 +translation_of: Web/JavaScript/Reference/Errors/Deprecated_expression_closures +--- +<div>{{jsSidebar("Errors")}}</div> + +<p>JavaScript の警告 "expression closures are deprecated" は、標準外の<a href="/ja/docs/Web/JavaScript/Reference/Operators/Expression_closures">式クロージャ</a>構文 (略記関数構文) が使用されたときに発生します。</p> + +<h2 id="Message" name="Message">メッセージ</h2> + +<pre class="syntaxbox">Warning: expression closures are deprecated +</pre> + +<h2 id="Error_type" name="Error_type">エラー種別</h2> + +<p>警告。 JavaScript の実行は中断されません。</p> + +<h2 id="What_went_wrong" name="What_went_wrong">原因</h2> + +<p>標準外の<a href="/ja/docs/Web/JavaScript/Reference/Operators/Expression_closures">式クロージャ</a>構文 (略記関数構文) は非推奨のため、使用すべきではありません。この構文は <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1083458">bug 1083458</a> で削除予定であり、削除された後は {{jsxref("SyntaxError")}} が発生します。</p> + +<h2 id="Examples" name="Examples">例</h2> + +<h3 id="Deprecated_syntax" name="Deprecated_syntax">非推奨の構文</h3> + +<p>式クロージャで、中括弧を省略したり、関数宣言やメソッド定義で return 文を省略したりすることです。</p> + +<pre class="brush: js example-bad">var x = function() 1; + +var obj = { + count: function() 1 +}; +</pre> + +<h3 id="Standard_syntax" name="Standard_syntax">標準の構文</h3> + +<p>標準外の式クロージャ構文から標準の ECMAScript 構文に変換するためには、波括弧と return ステートメントを追加します。</p> + +<pre class="brush: js example-good">var x = function() { return 1; } + +var obj = { + count: function() { return 1; } +}; +</pre> + +<h3 id="Standard_syntax_using_arrow_functions" name="Standard_syntax_using_arrow_functions">アロー関数を使用した標準の構文</h3> + +<p>代わりに<a href="/ja/docs/Web/JavaScript/Reference/Functions/Arrow_functions">アロー関数</a>を使用することもできます。</p> + +<pre class="brush: js example-good">var x = () => 1;</pre> + +<h3 id="Standard_syntax_using_shorthand_method_syntax" name="Standard_syntax_using_shorthand_method_syntax">略記メソッド構文を使用した標準構文</h3> + +<p>次のように、式クロージャがゲッターとセッターにも見られることがあります。</p> + +<pre class="brush: js example-bad">var obj = { + get x() 1, + set x(v) this.v = v +}; +</pre> + +<p>ES2015 の<a href="/ja/docs/Web/JavaScript/Reference/Functions/Method_definitions">メソッド定義</a>で、次のように変換することができます。</p> + +<pre class="brush: js example-good">var obj = { + get x() { return 1 }, + set x(v) { this.v = v } +}; +</pre> + +<h2 id="See_also" name="See_also">関連情報</h2> + +<ul> + <li><a href="/ja/docs/Web/JavaScript/Reference/Operators/Expression_closures">式クロージャ</a></li> + <li><a href="/ja/docs/Web/JavaScript/Reference/Functions/Arrow_functions">アロー関数</a></li> + <li><a href="/ja/docs/Web/JavaScript/Reference/Functions/Method_definitions">メソッド定義</a></li> +</ul> |
