一、JavaScript对象遍历 A、JavaScript属性访问 1.方式一:对象.属性 2.方式二:对象[属性]//字符串格式 B、JavaScript属性遍历 var ren = {}; ren.name="孙悟空"; ren.jineng=function(){alert("地狱火")} for(var i in ren){ alert(ren[i]); } 输出结果为孙悟空,function(){alert("地狱火")} 二、对象特性之封装 把对象所有的组成部分组合起来,尽可能的隐藏对象的部分细节,使其受到保护。 只保留有限接口和外部发生联系 例: 孙悟空: 属性: 皮肤:至尊宝 行为: 打野 A、工厂函数--不推介使用 function hero(color){ var hr = {} hr.color=color; hr.jineng=function(){alert("打野");} return hr; } var swk=hero("至尊宝"); alert(typeof swk);//object swk.jineng();//打野 alert(swk.color);//至尊宝 B、构造方法 function hero(color){ this.color=color; this.look=function(){ alert("打野"); } } var swk=new hero("至尊宝"); alert(swk.color);//至尊宝 C、prototype(原型)方法 function hero(color){ this.color=color; this.look=function(){ alert("打野"); } } hero.prototype.beidong=function(){ alert("大圣神威"); } hero.prototype.pk={name:"团战"} var swk1=new hero("地狱火"); var swk2=new hero("至尊宝"); swk1.beidong();//大圣神威 swk2.beidong();//大圣神威 alert(swk1.pk.name="切后排");//切后排 alert(swk2.pk.name);//切后排 由此可见,改变第一个对象的原型属性,第二个也会更改。 D、混合方式 function hero(color){ this.color=color; this.jineng=function(){ alert("如意金箍"); } hero.prototype.beidong={name:"大圣神威"} } hero.prototype.pk=function(){ alert("猴三棍"); } var swk1=new hero("至尊宝"); var swk2=new hero("地狱火"); swk1.pk();//猴三棍 swk2.pk();//猴三棍 alert(swk1.beidong.name="斗站冲锋");//斗站冲锋 alert(swk2.beidong.name);//斗站冲锋 |
| 本文出处: http://www.toutiao.com/a6429799468992495873/ |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|