JS中用new创建对象与不用new创建对象区别:


 1 function classA() {
 2   console.log(this);
 3   var that = this == window ? {} : this;
 4   that.name = "classA";
 5   return that;
 6 }
 7 
 8 new classA(); // 是一个classA的实例
 9 classA(); // 输出了window
10 
11 var obj1 = new classA();
12 var obj2 = classA();
13 
14 console.log(obj1.name);//classA
15 console.log(obj2.name);//ClassA
16 
17 
18 /*当用new的时候,函数内部的this是一个新的对象,如果不用new,
19 也就是把它当成一个普通的函数执行,它的this是window。*/

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM