[JavaScript]Underscore.jsのchain()が便利そうだけどいまいち理解できない

最後にvalue()を呼び出すと欲しいものが取れる、ってことは把握。

var stooges = [{name: 'curly', age: 25}, {name: 'moe', age: 21}, {name: 'larry', age: 23}];
var youngest = _.chain(stooges)
  .sortBy(function(stooge){ return stooge.age; })
  .map(function(stooge){ return stooge.name + ' is ' + stooge.age; })
  .first()
  .value();

サンプルを拝借すると、これで一番若い人のデータが取れる。
途中でmap()を実行してるから結果が変わってる。
ややこしい。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です