搜索
写经验 领红包
 > 职场

javascipt对象遍历(js如何遍历对象的属性和方法)

导语:JavaScript对象遍历、封装

一、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);//斗站冲锋

本文内容由小茹整理编辑!