[英]How to achieve JavaScript Object inheritance?
我想基于现有的JavaScript对象创建一个新的JavaScript对象。
直到现在,我的研究使我开始使用jQuery扩展功能。
例:
var object1 = {
name:'same name',
age:'1',
occupation:'programmer'
}
var object2 = {
name:'same new name'
}
现在,当我打电话给:
$.extend({},object1,object2);
它完美地工作,我的问题是当对象中有对象成员时!
var object1 = {
name:'same name',
age:19,
occupation:'programmer',
parent:{
name:'parent name',
age:35
}
}
var object2 = {
name:'same new name',
parent:{
age:40
}
}
现在,当我打电话
$.extend({},object1,object2);
object1.parent是:
{
age:40
}
我希望它是:
{
name:'same new name',
age:40
}
有没有办法实现这个目标?
对jQuer.extend()方法使用deep参数,您的代码应为:
$.extend(true,{},object1,object2)
您要做的是进行深度扩展
$.extend(true, {},object1,object2);
您可以强制$.extend
进行深拷贝,如下所示:
$.extend(true, {},object1,object2);
尽管$.extend
并不会创建继承层次结构,而只是复制属性。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.