首页 > 代码库 > javascript构造函数强制使用new
javascript构造函数强制使用new
如果有时候我们忘记对构造函数使用new的话,构造函数的this将指向window
function Person(){
this.name = ‘Julie‘;
}
var good_moring = Person();
console.log(good_moring); //输出undefined
console.log(window.name); //输出Julie
遵循命名约定一定程序上有助于避免忘记使用new所带来的问题,但命名约定也只是一种建议,并不能强制保证正确的行为。
板栗:
function Waffle(){
if( !(this instanceof Waffle) ){
return new Waffle();
}
this.name = ‘carl‘;
}
var first = new Waffle(),
second = Waffle();
console.log(first.name); //carl
console.log(second.name); //carl
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。