[解決済み] ES6 矢印関数で return 文を使用するのはどのような場合か
2022-04-13 11:59:40
質問事項
新しい
ES6 矢印関数
言う
return
は、状況によっては暗黙の了解となる。
この式は、その関数の暗黙の戻り値でもある。
どのような場合に
return
をES6矢印関数で使用することはできますか?
どのように解決するのですか?
ジャクソンが一部 回答はこちら という質問をしています。
暗黙の戻り値、ただしブロックがない場合のみ。
- これは、ワンライナーが複数行に拡張されたときに、プログラマーが
return
.- 暗黙の帰路は構文的に曖昧である。
(name) => {id: name}
はオブジェクトを返します。{id: name}
...ですよね?違うね。返ってくるのはundefined
. これらの中括弧は明示的なブロックです。id:
はラベルです。
の定義をこれに加える。 ブロック :
ブロック文(他の言語では複合文)は、0個以上の文をグループ化するために使用されます。ブロックは2つの中括弧で区切られます。
例 :
// returns: undefined
// explanation: an empty block with an implicit return
((name) => {})()
// returns: 'Hi Jess'
// explanation: no block means implicit return
((name) => 'Hi ' + name)('Jess')
// returns: undefined
// explanation: explicit return required inside block, but is missing.
((name) => {'Hi ' + name})('Jess')
// returns: 'Hi Jess'
// explanation: explicit return in block exists
((name) => {return 'Hi ' + name})('Jess')
// returns: undefined
// explanation: a block containing a single label. No explicit return.
// more: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/label
((name) => {id: name})('Jess')
// returns: {id: 'Jess'}
// explanation: implicit return of expression ( ) which evaluates to an object
((name) => ({id: name}))('Jess')
// returns: {id: 'Jess'}
// explanation: explicit return inside block returns object
((name) => {return {id: name}})('Jess')
関連
-
fetch ネットワークリクエストラッパーの説明例
-
元のイベントが実行されなかった後に要素を追加するためのjQueryソリューション
-
[解決済み] Error : 未定義のプロパティ 'map' を読み取ることができません。
-
[解決済み】リソースの読み込みに失敗した:Bind関数でサーバーが500(Internal Server Error)のステータスで応答した【非公開
-
[解決済み] JavaScriptで "use strict "は何をするのか、その根拠は?
-
[解決済み] JSONPとは何か、なぜ作られたのか?
-
[解決済み] Node.jsを使うタイミングをどう判断するか?
-
[解決済み] JavaScriptで二重引用符と単一引用符はいつ使うべきですか?
-
[解決済み] varキーワードの目的と、どのような場合に使用する(または省略する)べきですか?
-
[解決済み】JavaScriptの関数名を文字列で指定して実行する方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
要素ツリー制御によるvueTreeテーブル
-
Vueの要素ツリーコントロールに破線を追加する説明
-
jsを使った簡単な照明スイッチのコード
-
vue3.0プロジェクトのアーキテクチャを構築するための便利なツール
-
Vueのフィルタの説明
-
[解決済み] テスト
-
[解決済み】TypeErrorの解決方法。未定義またはヌルをオブジェクトに変換できない
-
[解決済み] TypeError: $.ajax(...) is not a function?
-
[解決済み】「.addEventListener is not a function」なぜこのエラーが発生するのか?
-
nullのプロパティinnerHTMLを読み取れません エラーメッセージ