昨天因为公司的一个需求,所以就研究了一下json对象的属性的遍历和动态修改:

var person= {
name: 'zhangsan',
pass: '123' ,
'sni.ni' : 'sss',
hello:function (){
for(var i=0;i<arguments.length;i++){
//在不知参数个数情况下可通过for循环遍历
// arguments这个是js 默认提供
alert("arr["+i+"]="+arguments[i]);
}
}
} //遍历属性
for(var item in person){
if(typeof person[item] === 'string' || typeof dayobj[item]  === 'number'){
alert("person中"+item+"的值="+person[item]);
}else if(typeof person[item] === 'function'){
person[item](1,1);//js 的function的参数可以动态的改变
}
}
//添加属性 person.isMe = 'kaobian'; // 这种是属性名字正常的
//当属性名字不正常时,像下面这种,必须用这种形式的,
person['isMe.kaobian'] = 'hello kaobian'; //上面的也可以用下面的形式 for(var item in person){
if(typeof person[item] === 'string' || typeof dayobj[item]  === 'number'){
alert("person中"+item+"的值="+person[item]);
}else if(typeof person[item] === 'function'){ person[item](1,1);
}
}

出处:http://kaobian.iteye.com/blog/1152239

遍历json 对象的属性并且动态添加属性的更多相关文章

  1. Python笔记_第三篇_面向对象_8.对象属性和类属性及其动态添加属性和方法

    1. 对象属性和类属性. 我们之前接触到,在类中,我们一般都是通过构造函数的方式去写一些类的相关属性.在第一次介绍类的时候我们把一些属性写到构造函数外面并没有用到构造函数,其实当时在写的时候,就是在给 ...

  2. 如何遍历json属性和动态添加属性

    var person= { name: 'zhangsan', pass: '123' , 'sni.ni' : 'sss', hello:function (){ for(var i=0;i< ...

  3. js遍历对象的属性并且动态添加属性

    var person= { name: 'zhangsan', pass: '123' , 'sni.ni' : 'sss', hello:function (){ for(var i=0;i< ...

  4. JS-给对象动态添加属性

    var obj = {};//用来存放获取到所填写的信息 btn.onclick = function(){ var city = input_city.value; var num = input_ ...

  5. js对象动态添加属性,方法

    1. 动态添加属性,方法 var object = new Object(); object.name = "name"; object.age = 19; >>> ...

  6. 20170702-变量说明,静态方法,类方法区别,断点调试,fork,yield协程,进程,动态添加属性等。。

    概念: 并行:同时运行 并发:看似同时运行  json后任然中文的问题 import json d = {"名字":"初恋这件小事"} new_d1 = jso ...

  7. 对于json对像,怎么遍历json对象的所有key,在使用json对象时,如果无法知道key,怎么通过key变量来获取值

    对于json对像,怎么遍历json对象的所有key,在使用json对象时,如果无法知道key,怎么通过key变量来获取值?请参阅下面的关键代码: <html> <head> & ...

  8. 我的Python学习笔记(四):动态添加属性和方法

    一.动态语言与静态语言 1.1 动态语言 在运行时代码可以根据某些条件改变自身结构 可以在运行时引进新的函数.对象.甚至代码,可以删除已有的函数等其他结构上的变化 常见的动态语言:Object-C.C ...

  9. 【17】有关python面向对象编程的提高【多继承、多态、类属性、动态添加与限制添加属性与方法、@property】

    一.多继承 案例1:小孩继承自爸爸,妈妈.在程序入口模块再创建实例调用执行 #father模块 class Father(object): def __init__(self,money): self ...

随机推荐

  1. Knights of a Polygonal Table CodeForces - 994B (贪心)

    大意:n个骑士, 每个骑士有战力p, 钱c, 每个骑士可以抢战力比他低的钱, 每个骑士最多抢k次, 对每个骑士求出最大钱数 按战力排序后, 堆维护动态前k大即可 #include <iostre ...

  2. hdu 1258

    Sum It Up Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total S ...

  3. Elasticsearch在centos6中的安装

    一安装, 在你可以从 elasticsearch.org\/download 下载最新版本的Elasticsearch.tar文件. 一.用户设置 如果已经是普通用户登录可跳过此步骤. Elastic ...

  4. 华为root手机

  5. photoshop cc 智能切图

    这节分享一个photoshop cc 开始有的自动生成图标的方法 psd练习文件 http://pan.baidu.com/s/1pL2dwL1 1 工具:我这里用的是photoshop cc 201 ...

  6. superobject数组添加json对象,用的是引用

    procedure TForm1.Button1Click(Sender: TObject); var ja,jo: ISuperObject; I: Integer; begin ja := SA( ...

  7. 递归算法,如何把list中父子类对象递归成树

    以前写代码for循环写的多,递归除了在大学学习以外,真没怎么用过! 最近项目中使用到了关于族谱排列的问题,就是怎么把数据库里的多个子父类people对象,在界面中用树的结构展示出来 假设数据库中peo ...

  8. (C/C++学习笔记) 十一. 数组

    十一. 数组 ● 基本概念 数组:数组是一组在内存中依次连续存放的(数组所有元素在内存中的地址是连续的).具有同一类型的数据变量所组成的集合体.其中的每个变量称为数组元素,它们属于同一种数据类型,数组 ...

  9. > ch05-01

    这是<<shaders for game programmers and artists>> 第五章中第一个shader例子--RTT..一直没弄出结果,今天记下来,主要是操作 ...

  10. spring数据源

    包含三部分内容 1.spring jdbc 2. spring datasource 3.spring Connection pooling 完整的项目请往百度云盘下载: https://pan.ba ...