`
kaobian
  • 浏览: 209035 次
  • 性别: Icon_minigender_1
  • 来自: 哈尔滨
社区版块
存档分类
最新评论

遍历json 对象的属性并且动态添加属性

阅读更多
昨天因为公司的一个需求,所以就研究了一下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'){
      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'){
      alert("person中"+item+"的值="+person[item]);
    }else if(typeof person[item] === 'function'){

        person[item](1,1);
    } 
 } 



3
3
分享到:
评论
1 楼 kaobian 2011-08-19  
遍历js对象都是这个做的,包括数组,数组也是js 的一个对象

相关推荐

    遍历json 对象的属性并且动态添加属性的实现

    昨天因为公司的一个需求,所以就研究了一下json对象的属性的遍历和动态修改: var person= { name: 'zhangsan', pass: '123' , 'sni.ni' : 'sss', hello:function (){ for(var i=0;i&lt;arguments.length;i++)...

    jquery动态遍历Json对象的属性和值的方法

    1、遍历 json 对象的属性 //定义json对象 var person= { name: 'zhangsan', pass: '123', fn: function(){ alert&#40;... //遍历person属性包括方法,如果不想显示出方法...2、动态为 json对象 添加属性 需要 使用

    json实现添加、遍历与删除属性的方法

    本文实例讲述了json实现添加、遍历与删除... //遍历JSON对象 for(var index in obj){ alert&#40;index&#41;; alert&#40;obj[index]&#41;; } //删除JSON属性 delete obj.age; alert&#40;obj.age&#41;; &lt;/scr

    使用 JavaScript 将 JSON 转换为对象,并使用 DOM API 将其呈现在 HTML 页面.html

    具体来说,我们创建一个 &lt;div&gt; 元素,用于显示转换后的结果,然后遍历对象的所有属性,为每个属性创建一个 &lt;p&gt; 元素,用于显示属性名和属性值,并将其添加到 &lt;div&gt; 元素中。如果 JSON 输入无效,我们将显示一个警告...

    通过开源框架获取Json数据

    1.引入jar文件 ...5.返回JSONObject对象或者JSONOArray对象(JSONOArray对象遍历json数组) 6.JSONObject对象get(“属性名”),getString(“属性名”),getInt(“属性名”)等方法来获取指定属性名的值

    node-json-db:一个简单的“数据库”,它使用JSON文件作为Node.JS

    一个简单的“数据库”,它将JSON文件用于Node... 您可以使用DataPath轻松遍历数据以直接到达有趣的属性。 DataPath的原理与XMLPath相同。 例 { test : { data1 : { array : [ 'test' , 'array' ] } , data2 : 5 }

    reader-json:资源哨兵JSON阅读器

    约定: 仅访问数组的第一个元素将父级属性添加到合格名称将Boolean转换为Number (例如:0或1) 将null转换为NULL &lt;String&gt; 将空Array转换为NULL 安装毛线添加--dev @ resource-sentry / reader-json配置entry ,一...

    animate.js

    //遍历json对象中的每个属性还有属性对应的目标值 for (var attr in json) { //判断这个属性attr中是不是opacity if (attr == "opacity") { //获取元素的当前的透明度,当前的透明度放大100倍 var current = ...

    JavaScript详解(第2版)

     8.5.1 使用prototype属性为对象添加属性   8.5.2 原型查找链   8.5.3 使用原型为对象添加方法   8.5.4 所有对象都有的属性和方法   8.5.5 创建子类及继承   8.6 应知应会   练习   第9章 ...

    超实用的jQuery代码段

    11.17 jQuery遍历对象的属性 11.18 最优化的循环语句写法 11.19 如何构建最优化的字符串 11.20 使用jQuery产生GUID值 11.21 使用jQuery实现聚合函数 11.22 用jQuery打印网页的特定区域 11.23 禁止表单被提交 11.24 ...

    精易官方免费模块v3.60版

    取通用属性 (“Id”) 新:json.取通用属性 (“[0].Id”) 2.完善“网页_取域名” 将原来的3.50的和3.51重写的加强版合并 3.修复“系统_取宽带线路 ()”因为新版“网页_取域名”带来的bug 感谢 4.重写“系统_修改IP...

    ExtAspNet_v2.3.2_dll

    -如果TreeNode的属性Enabled="false",则此项变灰并且不会被选中(feedback:your568)。 -修正TreeNode的属性NavigateUrl不接受服务器端URL(以~/开头)的BUG。 -增加Accordion和Tree配合使用的示例(other\...

    ExtAspNet v2.2.1 (2009-4-1) 值得一看

    -如果TreeNode的属性Enabled="false",则此项变灰并且不会被选中(feedback:your568)。 -修正TreeNode的属性NavigateUrl不接受服务器端URL(以~/开头)的BUG。 -增加Accordion和Tree配合使用的示例(other\...

    ActionScript开发人员指南中文版

    HTMLLoader对象的显示属性 滚动HTML内容 访问HTML历史记录列表 设置在加载HTML内容时使用的用户代理 设置用于HTML内容的字符编码 为HTML内容定义类似于浏览器的用户界面 创建HTMLLoader类的子类 第章:处理AIR中与...

    python cookbook(第3版)

    4.1 手动遍历迭代器 4.2 代理迭代 4.3 使用生成器创建新的迭代模式 4.4 实现迭代器协议 4.5 反向迭代 4.6 带有外部状态的生成器函数 4.7 迭代器切片 4.8 跳过可迭代对象的开始部分 4.9 排列组合的迭代 ...

    jQuery详细教程

    如果您的网站包含许多页面,并且您希望您的 jQuery 函数易于维护,那么请把您的 jQuery 函数放到独立的 .js 文件中。 当我们在教程中演示 jQuery 时,会将函数直接添加到 &lt;head&gt; 部分中。不过,把它们放到一个单独的...

    精易模块[源码] V5.15

    1、改善“网页_访问”、“网页_访问_对象”命令,添加默认协议头“Referer” 2、修复校正API正确申明后,“类_内存”不能使用的BUG。 3、改善“普通填表-&gt;单选框_取状态”参数2加入可空标志。 4、改善“字节集_还原...

    jquery插件使用方法大全

    可以用来添加不向外部公开的方法,或者对jQuery的某些方法进行重新定义以提供新功能,或者提供更好的封装、避免名称空间冲突。当然,也可以用来开发插件,但Resig强烈建议在开发插件之前,先考虑jQuery UI widget...

Global site tag (gtag.js) - Google Analytics