Resuma algunas operaciones de procesamiento de datos js (es5, es6, es7) de uso común
Actualizado continuamente, ordenado por datos
2022.04.06
1. Agregar y eliminar atributos a objetos con js
※ Agregar
obj.name = "yyds"
※ borrar
delete obj.name
2. Operador de dispersión de objetos (...) Copia profunda y copia superficial
※ Cuando el objeto de matriz es de una capa, es copia profunda, cuando el objeto de matriz es de varias capas (elemento de tipo de referencia), es copia superficial
// 深拷贝
let timeLimit = {
startTime: "2022.02.02",
endTime: "2022.04.06",
}
let obj = {
...timeLimit }
obj.endTime = "2022.05.20"
console.log(timeLimit.endTime) // "2022.04.06" 不改变原对象的值
// 浅拷贝
let a = {
name: "yyds"
address: {
city: "zhuhai"
}
}
let b = {
...a }
b.address.city = "guangzhou"
console.log(a.address.city) // "guangzhou" 改变原对象的值,b.address.city对应的是a属性的引用
// 改进,使得深拷贝
let a = {
name: "yyds"
address: {
city: "zhuhai"
}
}
let b = {
...a,
address: {
...a.address
}
}
b.address.city = "guangzhou"
console.log(a.address.city) // "zhuhai"