1.创建一对象用new Object();
2.可以给创建的对象扩展方法或者属性 var obj= new Object(); obj.name="ssss"; obj.function1=function(){};
3.使用function创建对象有两种方法(一个创建对象的模板)
?function method1(){
???var obj= new Object();
???obj.attr1="";
???obj.attr2="";
???obj.function1=function(){}
???obj.function2=function(){}
???return obj;
?}
?调用:
?var obj1= method1();
?第二种方法
?function method2(){
???this.attr1="";
???this.attr2="";
???this.function1=function(){}
???this.function2=function(){}
?}
?调用:
?var obj1= new method2();
?两种区别:1.定义:用this的不需要在方法内部new 一个Object ,也不需要return这个obj ,不用this的则相反。
??????????2.调用: 一个要new 一个和方法调用一样不需要new
总结:在js中定义一个方法,其实是给window对象增加了一个方法,当方法中使用了this关键字,并给this扩展属性,那么此this则是在Object对象的基础上扩展的,而非window.
window.method1= function(){
???this.attr1="";//此this属于Object
}
js对象创建
原文地址:https://www.cnblogs.com/doublejun/p/8280638.html