基本用法
1. object.assign()方法用于对象的合并,将源对象(source)所有可枚举属性,复制到目标对象上(target),target和source两者属于包含关系
语法:object.assign(target, source1,source2)
比如我们要从home路由跳转到search路由,可以通过点击一级分类的id,二级分类的id,三级分类的id,分类的名字,搜索关键字,跳转到search路由,我们每点击一次,就要把params或者query参数属性的属性值赋值到对应的SearchParams属性的属性值上。这时就需要用到object.assign()方法,把params和query参数属性的属性值合并到SearchParams属性的属性值中
2.我们的SearchParams身上有十个属性值
3.这是query和params参数属性的属性值
4.需要用object.assign()方法把query和params参数属性的属性值赋值到SearchParams身上
注意点:
1.如果目标对象与源对象有同名属性,或多个源对象有同名属性,则后面的属性会覆盖前面的属性。
扫描二维码关注公众号,回复:
16283410 查看本文章
2.如果只有一个参数,Object.assign()
会直接返回该参数。
3.如果该参数不是对象,则会先转成对象,然后返回。
4.由于undefined
和null
无法转成对象,所以如果它们作为参数,就会报错。
5.如果非对象参数出现在源对象的位置(即非首参数),那么处理规则有所不同。首先,这些参数都会转成对象,如果无法转成对象,就会跳过。这意味着,如果undefined
和null
不在首参数,就不会报错。