```javascript
```javascript
利用·JSON.stringfy和JSON.parse深拷贝
let swr ={
name:"辅导费",
age:23,
pets:['打扫']
let swycopy =JSON.parse(JSON.stringify(swr)
```javascript
console.log(swrcopy) // { name: '邵威儒',
age: 28, pets: [ '小黄' ] }
// 此时我们新增swr的属性
```javascript
wr.pets.push('旺财')
console.log(swr) // { name: '邵威儒',
age: 28, pets: [ '小黄', '旺财' ] }
// 但是swrcopy却不会受swr影响
console.log(swrcopy) // { name: '邵威儒', age: 28,
pets: [ '小黄' ] }
种方式进行深拷贝,只针对json数据这样的键值对有效
使用扩展运算符
let name = { name:"邵威儒" }
let age = { age:28 }
let person = {}
Object.assign(person,name,age)
Object.assign(person,name,age)
console.log(person) // { name: ‘邵威儒’, age: 28 }
使用扩展运算符
let name = { name:"邵威儒" }
let age = { age:28 }
let person = {...name,...age}
console.log(person) // { name: '邵威儒', age: 28 }
扩展运算符和Object.assign对对象进行合并的行为,
是属于浅拷贝```
```javascript
// 以往我们这样来取数组中最大的值
function max(...args){
return Math.max.apply(null,args)
}
console.log(max(1,2,3,4,5,6)) // 6
// 现在我们用扩展运算符看看
function max(...args){
return Math.max(...args)
// 把args [1,2,3,4,5,6]展开为1,2,3,4,5,6
}
console.log(max(1,2,3,4,5,6)) // 6