js面向对象var a=this;对a操作会不会影响当前对象?(a是指向this还是复制新对象)
答案:1 悬赏:20 手机版
解决时间 2021-04-02 08:00
- 提问者网友:最爱你的唇
- 2021-04-01 12:39
js面向对象var a=this;对a操作会不会影响当前对象?(a是指向this还是复制新对象)
最佳答案
- 五星知识达人网友:渊鱼
- 2021-04-01 14:16
会。
a是指向this。
一个变量=对象或数组,指的都是引用。
若想要复制对象或数组,必须一个一个属性复制:
例如:
var obj={.....};
var b={};
for (var a in obj)
{
b[a]=obj[a];
}
console.log(b); // b复制了对象obj。所以,无论你如何操作obj都不会影响b。
可若是你直接这样:
var b=obj;
那么,obj变动,则b也变动。追问有没有this.clone()这个方法追答没听说过。不过元素但是有一个复制节点的方法:cloneNode()对象复制,是要你自己定义一个函数来复制。js就是这样用的,不要太依赖于预定义的方法……追问还是习惯java
a是指向this。
一个变量=对象或数组,指的都是引用。
若想要复制对象或数组,必须一个一个属性复制:
例如:
var obj={.....};
var b={};
for (var a in obj)
{
b[a]=obj[a];
}
console.log(b); // b复制了对象obj。所以,无论你如何操作obj都不会影响b。
可若是你直接这样:
var b=obj;
那么,obj变动,则b也变动。追问有没有this.clone()这个方法追答没听说过。不过元素但是有一个复制节点的方法:cloneNode()对象复制,是要你自己定义一个函数来复制。js就是这样用的,不要太依赖于预定义的方法……追问还是习惯java
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯