比如现在有一条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)
使用原生的解析:
String json = "..."
//遍历数组里的值,得到每个独立的对象,然后获取对应的值设置到声明好的对象中,最终创建对象完成后添加到集合中,如我自己代码里的片段:
for (int j = 0j <array.length()j++) {
obj = array.getJSONObject(j)
Data data = new Data()
mDataList.add(data)
}
数组声明
在数组的声明格式里,“数据类型”是声明数组元素的数据类型,可以是java语言中任意的数据类型,包括简单类型和结构类型。“数组名”是用来统一这些相同数据类型的名称,其命名规则和变量的命名规则相同。
数组声明之后,接下来便是要分配数组所需要的内存,这时必须用运算符new,其中“个数”是告诉编译器,所声明的数组要存放多少个元素,所以new运算符是通知编译器根据括号里的个数,在内存中分配一块空间供该数组使用。利用new运算符为数组元素分配内存空间的方式称为动态分配方式。
以上内容参考:百度百科-数组
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)