JS new关键字的问题


function fn()

{

    this.user = ‘testNew’;

}

var a = new fn;

console.log(a.user); //testNew



function fn()

{

    this.user = ‘testNew’;

}

var a = new fn();

console.log(a.user); //testNew

为什么一样,new的作用到底是什么,为什么第一个fn不执行也可以new一个出来?


沧海一幻觉
浏览 467回答 2
2回答

忽然笑

这个问题《JavaScript权威指南》8.2.3节已经有详细解释了:

一只名叫tom的猫

一个是原型,一个是实例。你可以试试分别把a.user的值修改,再console.log(fn.user)就知道了。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript