js 数据结构map

JavaScript015

js 数据结构map,第1张

1.JavaScript 的对象(Object),本质上是键值对的集合(Hash结构),但是传统上只能用字符串当作键。这给它的使用带来了很大的限制。

2.类似于对象,也是键值对的集合,但是“键”的范围不限于字符串,各种类型的值(包括对象)都可以当作键。也就是说,Object结构提供了“字符串—值”的对应,Map 结构提供了“值—值”的对应,是一种更完善的 Hash 结构实现。

3.如果对同一个键多次赋值,后面的值将覆盖前面的值。

4.只有对同一个对象的引用,Map 结构才将其视为同一个键。Map 的键实际上是跟内存地址绑定的,只要内存地址不一样,就视为两个键。这就解决了同名属性碰撞(clash)的问题。

5.如果 Map 的键是一个简单类型的值(数字、字符串、布尔值),则只要两个值严格相等,Map 将其视为一个键.

var d = JSON.parse(data)

首先你把data对象化,然后通过d.pageTotalNums等直接获取

按照你这个,如果你要获取的是orders里面的内容的话,你要先

var o=d.orders

然后再each循环获取里面的

JavaBean(以User为例)转成json格式

1.转成JSONArray类型

User user = new User()

user.setUsername("cxl")

user.setPassword("1234")

JSONArray json = JSONArray.fromObject(user)

System.out.println(json)//[{"password":"1234","username":"cxl"}]

response.getWriter().print(json.toString())

在js文件取数据

$.getJSON("http://localhost:8080/jQueryDemo/servlet/UserServlet",null,function(data) {

alert(data[0].username)

alert(data[0].password)

})

2.转成JSONObject类型

JSONObject jsonObj = JSONObject.fromObject(user)

System.out.println(jsonObj)//{"password":"1234","username":"cxl"}

response.getWriter().print(jsonObj)

在js文件取数据

alert(data.username)

alert(data.password)

List转成json格式

List<User>users = new ArrayList<User>()

User user = new User()

user.setUsername("cxl")

user.setPassword("1234")

User u = new User()

u.setUsername("lhl")

u.setPassword("1234")

users.add(user)

users.add(u)

1.转成JSONArray类型

JSONArray json = JSONArray.fromObject(users)

System.out.println(json.toString())

//[{"password":"1234","username":"cxl"},{"password":"1234","username":"lhl"}]

response.getWriter().print(json.toString())

js中取数据:alert(alert(data[0].username))