[JavaScript] 最近知ったカンマ演算子(変数を利用してオブジェクトプロパティを処理したい)
4087 ワード
本題
JS書いてて、オブジェクトのプロパティに変数を割り当てたいこと、よくありますよね。
CoffeeScriptでは以下のように書けます。
sample.coffee
$ "input"
.each ->
_key = $(@).attr "name"
_val = $(@).val()
_object = "#{_key}" : _val
コンパイルするとこうなります。
sample.js
$("input").each(function() {
var _key, _object, _val, obj;
_key = $(this).attr("name");
_val = $(this).val();
return _object = (
obj = {},
obj["" + _key] = _val,
obj
);
});
最初これをみたとき、なにやってんだろ?と思いましたが
ここで使われているのが、カンマ演算子でした。
パーフェクトJavaScriptにももちろん書いてありました。
参考文献はよく読めってことですね。
ついでに
ES6から、下のような記述が可能になるらしい。
es6.sample
var key = 'hoge';
var obj = { [key]: val };
Author And Source
この問題について([JavaScript] 最近知ったカンマ演算子(変数を利用してオブジェクトプロパティを処理したい)), 我々は、より多くの情報をここで見つけました https://qiita.com/pb_tmz08/items/c657d8acc0c796dfa233著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .