1. 遍历 json 对象的属性

 

//定义json对象
 var person= {
  name: 'zhangsan',
  pass: '123',

  fn: function(){

     alert(this.name+"的密码="+this.pass);

  }
 }
 //遍历person属性包括方法,如果不想显示出方法,可用typeof(person[item])== "function"来判断
 for(var item in person){
  alert("person中"+item+"的值="+person[item]);
 }

 

 

2.动态为 json对象 添加属性

需要 使用1中的 person对象

var copyPerson={}   //创建copyPerson对象,将person中的属性包括方法copy给该对象
 for(var item in person){
  copyPerson[item]= person[item];   //这样循环就可以将person中的属性包括方法copy到copyPerson中了
 }
 
 for(var item in copyPerson){
  alert("copyPerson中"+item+"的值="+person[item]);
 }

 

注意:使用 Ext.apply(copyPerson, person) 也可以 将person中的所有属性包括方法 copy到 copyPerson中

 

3.遍历 普通js对象的 属性

 

//定义一个普通的js类,包含方法
 var p= function (){
  this.name= '李四';
  this.pass= '456';
  this.fn= function(){
   alert(this.name+"的密码="+this.pass);
  }
 
 }

 var pp= new p();   //生成一个p类的对象 pp
 
 for(var item in pp){
 
 //遍历pp对象中的属性,只显示出 非函数的 属性,注意不能 遍历 p这个类
  if(typeof(pp[item])== "function")
   continue;
  alert("p对象中"+item+"的属性="+pp[item]);
 }

 

普通的 js对象 也可以copy,copy方法和 2.动态为 json对象 添加属性 思路一样

Logo

新一代开源开发者平台 GitCode,通过集成代码托管服务、代码仓库以及可信赖的开源组件库,让开发者可以在云端进行代码托管和开发。旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐