【数据处理篇】总结常用的js(es567)处理数据的操作

总结一些常用的js(es5、es6、es7)处理数据操作

持续更新,按数据排序

2022.04.06
一、js给对象添加和删除属性
※ 添加

obj.name = "yyds"

※ 删除

delete obj.name

二、对象的扩展运算符(…)深拷贝与浅拷贝
※当数组对象是一层的时候为深拷贝,当数组对象是多层(引用类型元素)的时候为浅拷贝

// 深拷贝
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"

猜你喜欢

转载自blog.csdn.net/TurtleOrange/article/details/123982436