关于javascript 内存分配问题 var a=function (){}; var a1=new a();

2025-01-03 01:13:19
推荐回答(5个)
回答1:

当然不一样了。这样只是两个对象,没有任何关系,只是他俩是同一个类的对象。如果想让他们为同一个引用,可以var a1=new a();var a2=a1;这样说明a2是a1的引用。

回答2:

不是同一个引用 好比是同一个模板 刻出的却是2张纸币 虽然2张纸币的大小 样式都一样 但是2个不同的个体 都需要存储空间
是JavaScript 面向对象的思想的体现

回答3:

不是同一个引用,你new()就像你ctrl+C一样,在内存中重新划出了一个空间分配给了new()的这个对象。你的a2就是这样的,他指向的是你new()的那个引用地址。

回答4:

javascript是原型模式的语言。
跟面向对象还是有很大区别的,我觉得你可以看看 john resig的 《精通javascript》 看下。

a1和a2指向的不是同一个引用。我概念也不是很清晰吧 , 有时间一起探讨下。

回答5:

不是同一个,使用了new关键字,,