@peccul is peccu

(love peccu '(emacs lisp cat outdoor bicycle mac linux coffee))

JavaScriptでオブジェクトを対象にmapやreduceする

JavaScriptでオブジェクトを対象にmapやreduceしたかった。

Object.keys()でオブジェクトのキーが取り出せるので、それを元にmapやreduceする。

var o = {
  key1: 'value1',
  key2: 'value2',
  key3: 'value3'
};
// retuce
Object.keys(o).reduce(function (previous, key) {
  return previous + key + '=' + o[key] + '&';
}, '');
// => "key1=value1&key2=value2&key3=value3&"

// map
// element means `o`s key  (`keys(o)`s element)
Object.keys(o).map(function (element, index, array) {
  return element + '=' + o[element];
}).join('&');
// => "key1=value1&key2=value2&key3=value3"

参考

stackoverflow.com