javascript定义对象写法

来源:互联网 发布:html5手机微场景源码 编辑:程序博客网 时间:2024/05/23 17:34

javascript定义对象的几种简单方法

1.构造函数方式,全部属性及对象的方法都放在构造方法里面定义

优点:动态的传递参数

缺点:每创建一个对象就会创建相同的方法函数对象,占用大量内存

  $(document).ready(function() {       var user=new User1("jack","123456");       var flag=user.login("jack","123456");       alert(flag);   });   //利用构造方法生成对象   function User1(name,password){       this.name=name;       this.password=password;       this.login=function(name,password){           if(this.name == name && this.password == password){               return true;           }else{               return false;           }       }

2.动态原型方式:加一个判断属性,来判断该对象是否已经被创建过,如果被创建过,则方法就不在构建

优点:将原型函数写在对象定义里面

缺点:不支持继承

 $(document).ready(function() {       var user=new User1("jack","123456");       var user1=new User1("jack","123456");   });   //测试单例   function User1(name,password){       this.name=name;       this.password=password;       if(typeof User1._initialized=="undefined"){           alert("是否继续生成");          User1.login=function(name,password){              if(this.name == name && this.password == password){                  return true;              }else{                  return false;              }          }       }       User1._initialized = true;   }

  }

3、JSON方式/对象直接量(强烈推荐用这种。)

格式:var 对象名 = { 

           变量1: 变量1的值,            变量1: 变量1的值,            ……,           函数1: function() {               函数体          },          函数2:function() {               函数体         }//Note:最后的逗号要去除为了和IE兼容。};

//示例

 var data={           name:"jack",           age:"26",           eat:function(){               alert("i am eat");           },           sleep:function(){               alert("i am sleep");           }   }; 
0 0
原创粉丝点击