const p1 = {
name:'lily',
age:1,
city:'北京'
}
function changeName(p){
return{...p,name:'ford'}
}
changeName(p1)
...是解够
//第一步
{...p,name:'ford'}={name:'lily',age:1,city:'北京',name:'ford'}
//第二步 相同key取最后一次的值 key的位置不变
{name:'lily',age:1,city:'北京',name:'ford'}={name:'ford',age:1,city:'北京'}
例如
const obj = {a: "one", b: "two", a: "three"};
console.log(obj);//{a: "three", b: "two"}
这是 JavaScript 中的对象扩展语法。三个点 (...) 被称为展开运算符,它可以用来将一组值转换为函数参数或数组、对象的元素。
在该示例中,展开语法用于创建 p 对象的副本,并将其中的 name 属性从 'lily' 修改为 'ford',因此返回的对象是:
{
name: 'ford',
age: 1,
city: '北京'
}