const test = (arg) => { param: 1, arg }
すみません、よくわからなくて調べるキーワード思いつかなくて質問しました
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
バッククオート3つの前後には改行を入れてください。記入エリアの右部分あたりにリアルタイムに結果が表示されていると思うので、そこを見ながら調整してください。
回答1件
0
ベストアンサー
投稿2016/05/26 15:28
総合スコア2883
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/05/26 15:35
ありがとうございます
戻り値の第2引数がわからないのですが、これはどのような値がreturnされるのでしょうか
2016/05/26 23:43 編集
iwamoto_takaaki さんが紹介した記事通り、関数式に変換してみると確かに変ですね。
このコード、本当にこれで全てですか。
SyntaxError になる気がするのですが。
const test = function (arg) { return {param: 1, arg}; };
2016/05/27 00:46
そうですね。ここ(http://mikelambert.me/es6/)でためしましたが、ES6→ES5変換ではreturnが生成されませんね。("{param: 1, arg}"というオブジェクトが返ってくると思ってました。)
中かっこなしで書くと、その値が返ってくるという仕様がある
(var f = i => i<=1? 1: i * f(i-1); みたいな書き方)
ので書いた人の意図としては、それかなとおもったのですが、オブジェクトの宣言の中かっことかぶってうまくいかないようです。
アロー関数なのは間違いなさそうですが、betterJSで通る言語があるのかなぁ。
ごめんなさい。これ以上わかりません。
2016/05/28 15:06
ご回答ありがとうございます
https://github.com/adwd/react-redux-introduction/blob/master/src/redux/modules/asyncTodo/asyncTodo.js
こちらの16〜21行目あたりをみて疑問に思いました
2016/05/28 15:26
receiveTodoの部分を書き換えたのならthink49さんの指摘通り、このコードが正解になります。
const test = function (arg) { return {param: 1, arg}; };
2016/05/31 06:50
2016/05/27 08:43のコメントは撤回します。
ES2015で規定された短縮記法を使っているようです。このコードは下記と等価です。
const test = function (arg) { return {param: 1, arg: arg}; };
http://js-next.hatenablog.com/entry/2014/10/02/073626
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。