本文主要是介绍请指教对象直接量中引用this的问题?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
如下代码:(1)
var xx = function() {
this.a = "xx";
this.b = this.a;
}
alert(new xx().b);
(2)
var x = function() {
this.a = "x";
this.b = {a:"x.b",b:this.a,c:function(){return this.a;}};
}
var s = new x();
alert(s.b.c());
代码(1)的结果是 "xx" ,也就是说this.b = this.a 引用的本对象中的另一个属性也就是a,
但(2)中的结果是 "x.b",这本来也是我意料中的事,因为肯定是引用着本对象中的a,但b:this.a,这里的a为什么引用的是x 类中的a变量而不是 b变量中的a变量中呢?是不是因为对象直接量中的属性(非function属性)不用引用或者说不存在this指针?请指点一下..........
这篇关于请指教对象直接量中引用this的问题?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!