1、先定义一个json变量。敏宽
2、然后定义这个变量的值,其实一个json对象就是一个obj对象。
3、要添加json对象的元素,直接使用数组下标方式,添加键和值就行了。
4、要为json对象添加对谈腔象,我们可以先创建一个对象。
5、然后也是使用数组下标方式,为其赋值为新的对象变量就行了。
6、在浏览器里,我们就桥侍亮可以看到这个json对象了,而且新加的元素和对象都已经在里面了。
js中如何向json数组添加元素比如现手蚂在有一条var jsonstr=“ [{'name':'a','value':1},{'name':'b','value':2}] ”然后将其变成json格式的 var json=eval('毕行埋('+jsonstr+')')现在我想直接对这个json数组进行 *** 作向其中添加元素,有没有快捷的方法,还是说必须对上面的字符串进行 *** 作再...展开
冰之幽梦 | 浏览 79146 次 2013-08-26 11:44
2015-07-13 09:27最佳答案
json 数组也是数组
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
//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(JavaScript Object Notation )是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,JSON是JavaScript原生数据格式。下面给大家介绍js数组添加json数据的两种方式。
// 第一种方式
personInfo
: [],
for(var i = 0i <_STAGE.passengerInfoArray.lengthi++){
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)
结果都为:'空闲闲置期'
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)