我搜索了很久,但找不到答案,但我认为这很容易。
我正在寻找lodash“object”的等价物,类似于lodash的_.pairs() - 但我想要一个对象数组(或一组对象)。
例如:
// Sample Input
{"United States":50, "China":20}
// Desired Output
[{"United States":50}, {"China":20}]
我搜索了很久,但找不到答案,但我认为这很容易。
我正在寻找lodash“object”的等价物,类似于lodash的_.pairs() - 但我想要一个对象数组(或一组对象)。
例如:
// Sample Input
{"United States":50, "China":20}
// Desired Output
[{"United States":50}, {"China":20}]
var input = {"United States":50, "China":20};
Object.keys(input).map(function(key) {
var ret = {};
ret[key] = input[key];
return ret;
});
//=> [{"United States":50}, {"China":20}]
var res = _.map(obj, _.rearg(_.pick, [2,1]));
上面的短代码片段可能会让人感到困惑。如果不使用_.rearg
函数,它将变成:
_.map(obj, function(v, k, a) { return _.pick(a, k); });
rearg
函数被用于重新排列传递给pick
方法的参数。mixin
的情况下使其链式工作 - _.chain(data).map(function(v,k,a) {return _.pick(a,k);});
- random_user_nameok, if you must:
var input = {"United States":50, "China":20};
var ouput = _.map(input, function(val, key){ var o = {}; o[key] = val; return o; });
_.map
来做任何事情,但我想问的是是否有一个相当于_.pairs()
的版本我错过了... - random_user_name
_.pairs()
,并在我的_.chain()中使用它,那么使用lodash方法比让我编写此函数并单独调用它更有意义。您是否建议lodash中没有此功能? - random_user_name