一. 三目运算符/三元运算符
写法2:
二.拷贝
拷贝 = 克隆
三.浅拷贝
因为引用值的缘由,需要给peroson2赋值 { }
这样person1、person2都有独立的存储空间
浅拷贝就是将对象中所有的元素赋值到新对象中
new Object、字面量上面的原型都是Object.prototype
浅拷贝的问题: 但是浅拷贝只对第一层处理了,第二层仍然会被修改:
上式中,修改person2的son下面的属性,person1也会更改。
9
浅拷贝一般写成方法,以至可以多次使用:
四.深拷贝 1.18
解决上述问题,就要用到深拷贝:
在方法中判断它是不是引用值:
Object.prototype.toString.call( [ ] ) 输出[object Array]
Object.prototype.toString.call( { } ) 输出[object Object]
origin[key]) === 'object':键值名为引用值 , 注意object为小o
deepClone(origin[key], target[key]); 递归 :能帮助函数深入下级查找引用值
五.深拷贝的几种方法
1.JSON: 缺点是不能复制方法
2.JQuary
3.JS原生方法
常见问题FAQ
- 免费下载或者VIP会员专享资源能否直接商用?
- 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
- 提示下载完但解压或打开不了?
- 找不到素材资源介绍文章里的示例图片?
- 模板不会安装或需要功能定制以及二次开发?
发表评论
还没有评论,快来抢沙发吧!