请教一个js中new构造函数中子函数的this问题-,-

function F1(){

    function f2(names){

          this.name=names;

          alert(this);//window,!为什么这里this会指向window?F1在后面是用new构造函数的形式实例化instance不是作为普通函数执行啊!//

        }

    f2("nicholas");

    this.age=29;

    alert(this);//Object 这个我理解,这是new的特性,this指向instance//

}                

var instance=new F1();

console.log(instance.name);//undefined,因为上面F1中没赋到值//

console.log(instance.age);//29//

console.log(window.name);//nicholas//


海绵宝宝撒
浏览 563回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript