首页 > 代码库 > JS中用new创建对象与不用new创建对象区别:

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(); // 输出了window10 11 var obj1 = new classA();12 var obj2 = classA();13 14 console.log(obj1.name);//classA15 console.log(obj2.name);//ClassA16 17 18 /*当用new的时候,函数内部的this是一个新的对象,如果不用new,19 也就是把它当成一个普通的函数执行,它的this是window。*/

 

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