93 字
1 分钟
使用new fn 和new fn()的细微区别
在多数情况下,两种方法的结果是一致的:
function Parent(){
this.num = 1;
}
console.log(new Parent());//输出Parent对象:{num:1}
console.log(new Parent);//输出Parent对象:{num:1}
例外:
function Parent(){
this.num = 1;
}
console.log(new Parent().num);//1
console.log(new Parent.num);//报错
原因
TIP
new Parent().num
的执行顺序相当于(new Parent()).num
new Parent.num
相当于new (Parent.num)
- 由此看来
new
的构造函数后跟括号优先级会提升
使用new fn 和new fn()的细微区别
https://blog.oceanh.top/posts/frontend/使用new-fn和new-fn的细微差别/