Movatterモバイル変換


[0]ホーム

URL:


codecamp

直接在JS里创建JSON数据然后遍历使用

直接在JS里创建JSON数据,然后遍历使用~
创建代码如下:(创建的是JSON对象)

var YearSelect = {}; var Year = 2014; var DateOption; for (var i = Year; i < Year + 12; i++) { DateOption = {'Year':i, 'Month':i-Year+1}; / alert(DateOption.Year) YearSelect[i] = DateOption; }

这里是创建一个JSON对象,包括了年份和月份的数据。
我为什么创建JSON对象,是因为我对JSON对象比较熟悉。php后台返回的也是json对象。
json对象没有length属性~~
所以遍历的话要:

for(var key in YearSelect){ alert(YearSelect[key].Year); alert(YearSelect[key].Month); }

这样就可以了~
记住一定要分辨好json的对象和数组~不然就一直是undenfined

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

下面给大家介绍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);

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


JS遍历Json字符串
JS循环遍历JSON数据的方法
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录
关于 JSON

JSON 教程

JSON 基础

json格式

JSON 示例

JSON解析

JSON遍历

JSON调用

JSON转换

JSON获取

JSON字符串

JSON数组

关闭

MIP.setData({'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false},'pageFontSize' : getCookie('pageFontSize') || 20});MIP.watch('pageTheme', function(newValue){setCookie('pageTheme', JSON.stringify(newValue))});MIP.watch('pageFontSize', function(newValue){setCookie('pageFontSize', newValue)});function setCookie(name, value){var days = 1;var exp = new Date();exp.setTime(exp.getTime() + days*24*60*60*1000);document.cookie = name + '=' + value + ';expires=' + exp.toUTCString();}function getCookie(name){var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)');return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null;}
[8]ページ先頭

©2009-2025 Movatter.jp