多语言展示
当前在线:1470今日阅读:26今日分享:39

JS关于对象赋值assign用法

现需要在js中,使用一个新的对象的值覆盖旧有对象,js中有一个方法:  Object.assign(target,…sources)  当target和sources对象中有相同的key时,在target对象中的值会被后面source对象的值覆盖。
方法/步骤
1

首先定义对象,代码如下:var o1 = { a: 1 };var o2 = { b: 2 };var o3 = { c: 3 };

2

第二步使用assign方法,注意代码如下:var obj = Object.assign(o1, o2, o3);console.log(obj); // { a: 1, b: 2, c: 3 }console.log(o1);  // { a: 1, b: 2, c: 3 }, target对象自身会被修改

3

注意如果想要避免o1被改变,需要这样写:var obj = Object.assign({},o1,o2,o3);//给一个空对象作为target,这样改变的是空对象console.log(obj);// { a: 1, b: 2, c: 3 }console.log(o1); // { a: 1}

推荐信息