JS对象的截取和合并
一、对象截取部分属性
用到lodash中的pick函数
import { pick } from 'lodash'
用法:_.pick(object, [keys])
表示返回一个只有列入key属性的对象。其中,参数object为JSON格式的对象,keys表示多个需要挑选出来的key属性。
//例子 var object = { 'a': 1, 'b': '2', 'c': 3 }; let newObj = _.pick(object, ['a', 'c']); console.log(object ) //{ 'a': 1, 'b': '2', 'c': 3 } console.log(newObj ) // => { 'a': 1, 'c': 3 }
二、合并多个对象
Object.assign(target, source)
Object.assign()
方法用于将所有可枚举属性的值从一个或多个源对象分配到目标对象。它将返回目标对象。
方法的第一个参数是目标对象,后面的参数都是源对象。
用法:
const target = { a: 1 }; const source1 = { b: 2 }; const source2 = { c: 3 }; Object.assign(target, source1, source2); console.log(target) //=>{a:1, b:2, c:3}
此外:Object.assign()
也常作深拷贝来使用
let newInfo = Object.assign({}, info)