本文主要介绍JavaScript中对象合并的各种方法。它以代码的形式非常详细。有需要的朋友可以参考一下,希望能帮到你。
目录
合并对象的方法有很多种(对于通过接口获取数据后给本地对象赋值极其有用)。第一种:手动赋值(非常棘手)。第二个:扩展运算符。第三个:Object.assign()(最推荐)。1.vue项目清表。
摘要
对象合并的多种方式(对于通过接口获取数据之后赋值给本地对象的时候极其有用)
第一种:手动赋值(很捞)
const obj1={
名称:' zs ',
年龄:13岁,
};
const obj2={
名称:' ls ',
性别:“女性”,
};
obj 1 . name=obj 2 . name;
obj 1 . sex=obj 2 . sex;
这种方法是最简单的,但是在日常项目中一个对象有很多属性。如果还是用这个方法,会有点繁琐。
第二种:扩展运算符
const obj1={
名称:' zs ',
年龄:13岁,
};
const obj2={
名称:' ls ',
性别:“女性”,
};
const newObj={.obj1,obj 2 };
console . log(new obj===obj 1);//假
console . log(new obj===obj 2);//假
通过扩展运算符的特性,可以快速合并对象,但缺点是需要一个新的变量来接收它们。
第三种:Object.assign() (最推荐)
const obj1={
名称:' zs ',
年龄:13岁,
};
const obj2={
名称:' ls ',
性别:“女性”,
};
const newObj=Object.assign(obj1,obj 2);
console . log(new obj===obj 1);//真
console . log(new obj===obj 2);//假
console . log(new obj);
//{
//名称:“ls”,
//年龄:13,
//性别:“女性”
//}
Object.assign()方法可以接收一个目标对象和一个或多个源对象作为参数。如果对象中有相同的属性,后一个对象的属性将覆盖前一个对象的属性。
原理是通过设置的access属性将下面的对象添加到目标对象中,所以最后返回的值实际上是第一个目标对象。您可以向目标对象添加访问属性,以查看覆盖过程。
const obj1={
设置一个值{
console . log(val);
},
};
Object.assign(obj1,{ a: 'tom' },{ a: 'jerry' },{ a:' dog ' });
//'汤姆'
//'杰瑞'
//'狗'
这种方法有很多使用场景,都特别好用,比如:
1.清空1.vue项目的表单
日常生活中有些同学可能会通过给表格中的数据逐个赋值null值来清空表格。其实效率很低,但是如果把Object.assign()和$options一起用,效率就很高了。
//每日
this . rule form . name=“”;
this . rule form . phone=“”;
this . rule form . imgurl=“”;
this . rule form . des=“”;
.此处省略一万字。
//使用Object.assign和$options
Object.assign(this.ruleForm,this。$options.data)
Tips: $ options存储Vue实例的初始值,所以可以通过覆盖Object.assign()的值来快速重置表单。同样,在修改表单数据时,您可以快速分配页面的规则表单。
const { data }=await xxxapi . getlist();
Object.assign(this.ruleForm,data);
总结
本文到此为止。希望能帮到你,也希望你能多关注我们的更多内容!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。