i =1; alert(i); varA=function() { alert(i); var i =2; alert(i); } A();
下列代码的运行结果。
var i =1;functionA(){ i =2; functionB(){var i =3;console.log(i); }B();console.log(i); }A();console.log(i);
下列代码的运行结果。
var b =2008;functionfnB(){alert(this.b);+function(){alert(this.b);}();functionfnB1(){alert(this.b);}fnB1();}var oB = {};oB.b =2011;oB.m = fnB;oB.m();// 函数中的子函数中的this默认指向window,在js中this没有传递性
下列代码的输出结果。
var i =2014;functionfnA(fn){fn();}var o = { i:2008,fnB:function(){alert(this.i); },fnC:function(){this.fnB(); fnA(this.fnB); } }o.fnC();// 作用域
下列代码的输出结果。
var a ="全局的a";functionobj() { this.fn=function() { alert(this.a); setTimeout(this.fn,1000); } } var o =newobj(); o.a ="局部的a"o.fn();
下列代码输出结果。
var i=2000;var oA = { i:2008,fnA:function(){ alert(this.i); }}var oB = { i:2010 }oA.fnA.call(oB); //输出?为什么?oA.fnA.call(); //输出?为什么?oA.fnA(); //输出?为什么?
下列代码输出结果。
functionA(a,b){ this.sum = a+b; }functionB(){ A.call(this,[2,3,4]); }var b =newB();alert(b.sum);
下列代码输出结果。
functionA(){this.course ="PHP高级工程师班";this.school ="动力学院"}functionB(){ A.apply(this); }var c =newB();alert(c.school);alert(c.course);
下列代码输出结果。
functionA(a,b){ this.sum = a+b; }functionB(){ A.apply(this,[2,3,4]); }var b =newB();alert(b.sum);
下列代码输出结果。
functionA(arg){ this.sum = arg[0]+arg[1]; }functionB(){ A.apply(this,[2,3,4]); }var b =newB();alert(b.sum);