RaR*_*RaR 1 javascript performance underscore.js lodash
我的对象如下,
obj = {
'1': {val: 1},
'2': {val: 2},
'3': {val: 3},
'4': {val: 4},
...
}
Run Code Online (Sandbox Code Playgroud)
给定键列表(作为Array),我想获得所有值列表(作为Array).
例如,
如果键列表是['3', '4'],输出将是[{val: 3}, {val: 4}]
我尝试如下
_.values(_.pick(obj, ['3', '4']))
Run Code Online (Sandbox Code Playgroud)
这可以工作,但它会进行两次迭代.有没有办法在一次迭代中实现相同的目标.提前致谢.
要从Lodash的选定对象props中创建值数组,请使用_.at():
var obj = {
'1': {val: 1},
'2': {val: 2},
'3': {val: 3},
'4': {val: 4}
};
var result = _.at(obj, ['3', '4']);
console.log(result);Run Code Online (Sandbox Code Playgroud)
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.4/lodash.min.js"></script>Run Code Online (Sandbox Code Playgroud)