【Underscore.js】_.partitionを読んだ
jashkenas/underscoreの_.partitionを読んだ。
概要
_.partition(array, predicate)
listをpredicateを満たすものと満たさないものの2つ配列に分割して返す。
var list = [1, 10, 7, 190, 43];var x = _.partition(list, function(num) { return num % 2 === 0;}); console.log(x); // [[10, 190], [1, 7, 43]]
ソースコード
_.partition = function(obj, predicate, context) { predicate = cb(predicate, context); var pass = [], fail = []; _.each(obj, function(value, key, obj) { (predicate(value, key, obj) ? pass : fail).push(value); }); return [pass, fail]; };
predicateを満たすものと満たさないものを配列にpushして返す。