js数组如何添加json数据及js数组与json的区别


Posted in Javascript onOctober 27, 2015

 JSON(JavaScript Object Notation )是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,JSON是JavaScript原生数据格式。

下面给大家介绍js数组添加json数据的两种方式。

// 第一种方式

personInfo
: [],
for(var i = 0; i < _STAGE.passengerInfoArray.length; i++){
var name = _STAGE.passengerInfoArray[i];
var person = {v:name, text:name};
this.personInfo.push(person);
}

// 第二种方式

var passengerInfo = {};
passengerInfo.psgTypeDesc = psgTypeDesc;
passengerInfo.flightPrice = flightPrice;
_STAGE.passengerInfoArray.push(passengerInfo);

js数组与 json 的区别

一,数组

     1. 定义一维数组:var s1=new Array();

                       s1=[1,2,3,4]或者s1[0]=1,s1[1]=2,s1[3]=3,s1[4]=4;
                      alert(s1[0]);

                       结果为1;

   2,,定义二维素组:var s1=new Array();

                               var s1=[[3,1],[2,3,4],3,[4,5,6,7,8]];
                                 alert(s1[1][0]);

                               结果为2;

 二,定义json对象

    1,json对象       

var status_process = {
       " name5" : '闲置期',
     "name1" : '播种期',
     "name2" : '苗期',
     "name3" : '生长期',
     "name4" : '采收期'
    }    
   alert(status_process);

      结果为:Object:Object;

  2,json字符串

              所谓json字符串,是指该字符串变量的值与json的格式相同,但是不是json对象,比如:

var s1="{";
       var s2 = " 'name5' : '闲置期',  'name1' : '播种期','name2' : '苗期','name3' : '生长期','name4' : '采收期'";
       var s3="}";
       var status_process=s1+s2 +s3;

                    虽然status_process的值符合json对象的格式,但是它不是对象,只是一个字符串(是拼凑出来的);

                   将字符串转换为json对象使用函数eval,eval("(" + status_process+ ")");

         结论:从后台传入到前台的是json字符串,不是真正的json对象,因此需要使用eval函数转换。

  3,json对象的使用       

var status_process = {
      name5 : '闲置期',
     name1 : '播种期',
     name2 : '苗期',
      name3 : '生长期',
      name4 : '采收期'
     };
     alert(status_process["name5"]);
     alert(status_process.name5);

             两个都为:闲置期

  4,json二维对象       

var status_process = {
 name5 : {name3:'空闲闲置期'},
 name1 : '播种期',
 name2 : '苗期',
 name3 : '生长期',
 name4 : '采收期'
};
alert(status_process["name5"]["name3"]);
alert(status_process.name5.name3);

  结果都为:'空闲闲置期'

Javascript 相关文章推荐
js精度溢出解决方案
Dec 02 Javascript
JavaScript实现快速排序(自已编写)
Dec 19 Javascript
js AppendChild与insertBefore用法详细对比
Dec 16 Javascript
Enter回车切换输入焦点实现思路与代码兼容各大浏览器
Sep 01 Javascript
JavaScript函数定义的常见注意事项小结
Sep 16 Javascript
Angular中$compile源码分析
Jan 28 Javascript
js操作数据库实现注册和登陆的简单实例
May 26 Javascript
JS 插件dropload下拉刷新、上拉加载使用小结
Apr 13 Javascript
JavaScript常见继承模式实例小结
Jan 11 Javascript
Vue 组件参数校验与非props特性的方法
Feb 12 Javascript
vue随机验证码组件的封装实现
Feb 19 Javascript
JS相册图片抖动放大展示效果的示例代码
Jan 29 Javascript
基于jquery实现鼠标滚轮驱动的图片切换效果
Oct 26 #Javascript
JavaScript编程中window的location与history对象详解
Oct 26 #Javascript
jquery移动端TAB触屏切换实现效果
Dec 22 #Javascript
基于jQuery实现搜索关键字自动匹配功能
Mar 26 #Javascript
以Python代码实例展示kNN算法的实际运用
Oct 26 #Javascript
Windows下用PyCharm和Visual Studio开始Python编程
Oct 26 #Javascript
php利用curl获取远程图片实现方法
Oct 26 #Javascript
You might like
PHP 中的批处理的实现
2007/06/14 PHP
Zend studio for eclipse中使php可以调用mysql相关函数的设置方法
2008/10/13 PHP
一个小型js框架myJSFrame附API使用帮助
2008/06/28 Javascript
javascript HTMLEncode HTMLDecode的完整实例(兼容ie和火狐)
2009/06/02 Javascript
如何使用Javascript正则表达式来格式化XML内容
2013/07/04 Javascript
jquery改变tr背景色的示例代码
2013/12/28 Javascript
在JS中如何调用JSP中的变量
2014/01/22 Javascript
深入理解JavaScript系列(18):面向对象编程之ECMAScript实现
2015/03/05 Javascript
JavaScript获取IP获取的是IPV6 如何校验
2016/06/12 Javascript
jQuery stop()用法实例详解
2016/07/28 Javascript
jQuery实现6位数字密码输入框
2016/12/29 Javascript
从零开始学习Node.js系列教程一:http get和post用法分析
2017/04/13 Javascript
vue使用drag与drop实现拖拽的示例代码
2017/09/07 Javascript
Scala解析Json字符串的实例详解
2017/10/11 Javascript
Vue-Access-Control 前端用户权限控制解决方案
2017/12/01 Javascript
实现单层json按照key字母顺序排序的示例
2017/12/06 Javascript
JS与jQuery实现ListBox上移,下移,左移,右移操作功能示例
2018/05/31 jQuery
JavaScript实现创建自定义对象的常用方式总结
2018/07/09 Javascript
菊花转动的jquery加载动画效果
2018/08/19 jQuery
ES6使用export和import实现模块化的方法
2018/09/10 Javascript
d3.js 地铁轨道交通项目实战
2019/11/27 Javascript
在js文件中引入(调用)另一个js文件的三种方法
2020/09/11 Javascript
vue router返回到指定的路由的场景分析
2020/11/10 Javascript
基于Python 的进程管理工具supervisor使用指南
2016/09/18 Python
Python操作SQLite数据库的方法详解【导入,创建,游标,增删改查等】
2017/07/11 Python
Python求平面内点到直线距离的实现
2020/01/19 Python
Python 定义只读属性的实现方式
2020/03/05 Python
.img/.hdr格式转.nii格式的操作
2020/07/01 Python
Python中logger日志模块详解
2020/08/04 Python
Html5+JS实现手机摇一摇功能
2015/04/24 HTML / CSS
乡镇党员干部群众路线对照检查材料思想汇报
2014/09/28 职场文书
2015年禁毒宣传活动总结
2015/03/25 职场文书
教师节倡议书2015
2015/04/27 职场文书
2015年保洁员工作总结
2015/05/04 职场文书
小学美术教学反思
2016/02/17 职场文书
Python实现视频中添加音频工具详解
2021/12/06 Python