Lodash _.omit 地图内的函数
Lodash _.omit function inside map
我正在尝试编写一个函数,它将转换对象数组。
var array = [{
id: 1,
name: 'Peter',
age: 29,
city: 'New York'
}, {
id: 2,
name: 'Peter2',
age: 19,
city: 'LA'
}, {
id: 3,
name: 'Peter3',
age: 89,
city: 'Rio'
}];
function mapArray(array) {
_.map(array, object => {
_.omit(object, ['id', 'name']);
});
return array;
}
而且它不起作用。结果我得到了一个包含所有字段的数组。 Lodash 版本是 4.17.4。如果重要的话,我也使用 nodejs :D
结果我想得到这样的对象数组:
[{
age: 29,
city: 'New York'
}, {
age: 19,
city: 'LA'
}, {
age: 89,
city: 'Rio'
}];
分别_.map()
and _.omit()
return一个新的array/object,并且不改变原来的项目。您必须 return 地图的结果,并删除包裹省略号(在箭头函数内)的大括号:
var array = [{"id":1,"name":"Peter","age":29,"city":"New York"},{"id":2,"name":"Peter2","age":19,"city":"LA"},{"id":3,"name":"Peter3","age":89,"city":"Rio"}];
function mapArray(array) {
// return from _.map
return _.map(array, object =>
_.omit(object, ['id', 'name']) // return from _.omit
);
}
// assign the results to a new variable
var result = mapArray(array);
console.log(result);
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.10/lodash.min.js"></script>
常量数组 = [{
编号:1,
姓名:'Peter',
年龄:29岁,
城市:'New York'
}, {
编号:2,
姓名:'Peter2',
年龄:19岁,
城市:'LA'
}, {
编号:3,
姓名:'Peter3',
年龄:89岁,
城市:'Rio'
}];
const 结果= array.map(({age, city})=>(
{年龄,城市}));
单线解决即可
_.map(array, o => _.omit(o, ['id', 'name']));
或
_.map(array, o => _.pick(o, ['age', 'city']));
我正在尝试编写一个函数,它将转换对象数组。
var array = [{
id: 1,
name: 'Peter',
age: 29,
city: 'New York'
}, {
id: 2,
name: 'Peter2',
age: 19,
city: 'LA'
}, {
id: 3,
name: 'Peter3',
age: 89,
city: 'Rio'
}];
function mapArray(array) {
_.map(array, object => {
_.omit(object, ['id', 'name']);
});
return array;
}
而且它不起作用。结果我得到了一个包含所有字段的数组。 Lodash 版本是 4.17.4。如果重要的话,我也使用 nodejs :D
结果我想得到这样的对象数组:
[{
age: 29,
city: 'New York'
}, {
age: 19,
city: 'LA'
}, {
age: 89,
city: 'Rio'
}];
分别_.map()
and _.omit()
return一个新的array/object,并且不改变原来的项目。您必须 return 地图的结果,并删除包裹省略号(在箭头函数内)的大括号:
var array = [{"id":1,"name":"Peter","age":29,"city":"New York"},{"id":2,"name":"Peter2","age":19,"city":"LA"},{"id":3,"name":"Peter3","age":89,"city":"Rio"}];
function mapArray(array) {
// return from _.map
return _.map(array, object =>
_.omit(object, ['id', 'name']) // return from _.omit
);
}
// assign the results to a new variable
var result = mapArray(array);
console.log(result);
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.10/lodash.min.js"></script>
常量数组 = [{ 编号:1, 姓名:'Peter', 年龄:29岁, 城市:'New York' }, { 编号:2, 姓名:'Peter2', 年龄:19岁, 城市:'LA' }, { 编号:3, 姓名:'Peter3', 年龄:89岁, 城市:'Rio' }];
const 结果= array.map(({age, city})=>( {年龄,城市}));
单线解决即可
_.map(array, o => _.omit(o, ['id', 'name']));
或
_.map(array, o => _.pick(o, ['age', 'city']));