JS实现给json数组动态赋值的方法示例

 更新时间:2020年03月19日 11:35:19   作者:小魏的马仔  
这篇文章主要介绍了JS实现给json数组动态赋值的方法,结合实例形式分析了javascript针对json数组的遍历、赋值等常用操作技巧,需要的朋友可以参考下

本文实例讲述了JS实现给json数组动态赋值的方法。分享给大家供大家参考,具体如下:

json 数组也是数组:

//1、
var jsonstr="[{'name':'a','value':1},{'name':'b','value':2}]";
var jsonarray = eval('('+jsonstr+')');
var arr =
  {
   "name" : $('#names').val(),
   "value" : $('#values').val()
  }
jsonarray.push(arr);
//2、
var json={};// 定义一个json对象
json.array1=["2","4"];// 增加一个新属性,此属性是数组
json.array1[json.array1.length]='6';// 数组追加一个元素
alert(json.array1)

给json类型的字符串动态赋值

json类型的字符串,需要使用json.parse()方法,先转换成json的对象,然后将其赋值给一个var类型的变量,最后为该变量使用push方法,动态赋值。

如果直接使用json.parse("jsonString").push,就会弹出push is not a function

嫌麻烦的话,可以使用(json.parse("jsonString")).push

var arr = {"id": scheduleId, "isDelete": true};
var jsonArray = JSON.parse(scheduleList);
jsonArray.push(arr);

下面是其他人的补充

Js中动态创建Json,动态为Json添加属性、属性值

var param = {};
 for(var i=0;i<fields.length;i++){
  var field = fields[i];
  if(field.searchCondition != undefined && $('#search'+field.name).val() != ''){
   param["search."+field.name]=$('#search'+field.name).val();
  }
 }

在js中,一个[]认为是数组;{}认为是Json对象;

var json = {};

定义一个Json对象;

为Json对象赋值:

json[aa] = "xx";

eval 解析json报错 提示缺少“;”
如果json串没问题的话,用eval('('+json+')');试试,换成单引号

javaScript动态创建数组、动态赋值json数据方法之一

/*测试:动态创建数组,动态赋值json数据*/
var json2 = "{'name':'zhangsan','age':99}";
var persons = new Array();
persons[ 0 ] = new Object();
persons[ 0 ].name = "xxx";
persons[ 0 ].age = 18;
persons[ 1 ] = new Function("return" + json2 )();
alert(  persons[ 1 ].name + persons[ 1 ].age );

/*上面结果显示 zhangsan99*/

/* json里面的数组转为JS的数组*/
var jsonXX = "[ {name:'zhangsan',age:99},{name:'lisi',age:77}]";
var obj = new Function("return "+jsonXX)();
for(var b in obj)
{
alert(obj[b].name);
}

/*补充安全一点做法是,要判断一下*/

var obj=(function ToJSON(o)
{
if( typeof ( o ) == "string")
{
try
{
return new Function("return "+o)();
}
catch( e )
{
return null;
}
}
})( jsonXX);

把json格式的字符串转换成javascript对象或数组

第一种

JSON.parse(jsonString)

第二种

eval("("+jsonString+")")

或者

eval('('+json+')');

第三种

var obj=(function ToJSON(o){
if(typeof(o)=="string")try{return new Function("return "+o)();}catch(e){return null;}
})("[{name:'zhangsan',age:'24'},{name:'lisi',age:'30'},{name:'wangwu',age:'16'},{name:'tianqi',age:'7'}]");
for(var b in obj)alert(obj[b].name);

PS:关于json操作,这里再为大家推荐几款比较实用的json在线工具供大家参考使用:

在线JSON代码检验、检验、美化、格式化工具:
http://tools.jb51.net/code/json

JSON在线格式化工具:
http://tools.jb51.net/code/jsonformat

在线XML/JSON互相转换工具:
http://tools.jb51.net/code/xmljson

json代码在线格式化/美化/压缩/编辑/转换工具:
http://tools.jb51.net/code/jsoncodeformat

在线json压缩/转义工具:
http://tools.jb51.net/code/json_yasuo_trans

更多关于JavaScript相关内容可查看本站专题:《JavaScript中json操作技巧总结》、《JavaScript查找算法技巧总结》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结

希望本文所述对大家JavaScript程序设计有所帮助。

相关文章

  • JS获取并处理php数组的方法实例分析

    JS获取并处理php数组的方法实例分析

    这篇文章主要介绍了JS获取并处理php数组的方法,结合实例形式分析了php针对数组的创建、转换以及js处理数组的接收、遍历、转换等相关操作技巧,需要的朋友可以参考下
    2018-09-09
  • JS判断文本框内容改变事件的简单实例

    JS判断文本框内容改变事件的简单实例

    本篇文章主要是对JS判断文本框内容改变事件的简单实例进行了详细的介绍,需要的朋友可以过来参考下,希望对大家有所帮助
    2014-03-03
  • 浅谈webpack组织模块的原理

    浅谈webpack组织模块的原理

    这篇文章主要介绍了浅谈webpack组织模块的原理,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-03-03
  • JS+CSS实现的蓝色table选项卡效果

    JS+CSS实现的蓝色table选项卡效果

    这篇文章主要介绍了JS+CSS实现的蓝色table选项卡效果,通过鼠标事件调用自定义函数实现页面元素样式的遍历与动态切换效果,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-10-10
  • Canvas实现动态粒子文字效果的代码示例

    Canvas实现动态粒子文字效果的代码示例

    这篇文章主要介绍了如何用Canvas实现动态粒子文字效果,文中有完整的代码示例,文章通过代码介绍的非常清楚,感兴趣的小伙伴跟着小编一起来看看吧
    2023-08-08
  • js如何查找json数据中的最大值和最小值方法

    js如何查找json数据中的最大值和最小值方法

    这篇文章主要介绍了js如何查找json数据中的最大值和最小值方法,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-04-04
  • javascript中checkbox使用方法实例演示

    javascript中checkbox使用方法实例演示

    这篇文章通过简单的实例演示了javascript中checkbox使用方法,感兴趣的小伙伴们可以参考一下
    2015-11-11
  • JS验证日期的格式YYYY-mm-dd 具体实现

    JS验证日期的格式YYYY-mm-dd 具体实现

    这篇文章介绍了JS对日期格式的验证实例,有需要的朋友可以参考一下
    2013-06-06
  • js封装成插件的步骤方法

    js封装成插件的步骤方法

    本篇文章主要介绍了js封装成插件的步骤方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-09-09
  • bootstrap-table实现表头固定以及列固定的方法示例

    bootstrap-table实现表头固定以及列固定的方法示例

    这篇文章主要介绍了bootstrap-table实现表头固定以及列固定的方法示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-03-03

最新评论