前台js 取json 对象数组数据

JavaScript017

前台js 取json 对象数组数据,第1张

1、先定义一个json变量。

2、然后定义这个变量的值,其实一个json对象就是一个obj对象。

3、要添加json对象的元素,直接使用数组下标方式,添加键和值就行了。

4、要为json对象添加对象,我们可以先创建一个对象。

5、然后也是使用数组下标方式,为其赋值为新的对象变量就行了。

6、在浏览器里,我们就可以看到这个json对象了,而且新加的元素和对象都已经在里面了。

js和java中的json对象无法互相转换的吧(用struts2可以),可以在java中将对象转换为json字符串,传到js后,再在js中将json字符串转换成json对象

Java code

Map map1 = new HashMap()

Map map2 = new HashMap()

map1.put("id", 1)

map1.put("name", "张三")

map2.put("id", 2)

map2.put("name","李四")

List list = new ArrayList()

list.add(map1)

list.add(map2)

Map jsonMap = new HashMap()

jsonMap.put("jsonstr",list) //必须是map对象才能转换成json对象

JSONObject json = JSONObject.fromObject(map)//要用到json-lib-2.3-jdk15.jar

return json.toString()

记得引入json.js

JScript code

UserAction.getUser(function(result) { var jsonResult = JSON.parse(result)//如何不行用var jsonResult=JSON.parseJSON(),json版本问题 var resultList = jsonResult['jsonstr']for(var one in resultList){ var item= resultList[one]alert(item.id)alert(item.name)}

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)