javascript怎么遍历map
var map = new HashMap();
map.put(a,1);
map.put(b,2);
遍历:
var key = map.keySet();
for (var i in key){
alert(map.get(key[i]));
}
注:js 中使用map,要先导入一个HashMap.js文件
没要求,引入这个文件之后,可以直接使用hashmap了var map = {'a': 'aaaaa','b': 'bbbbb'};for(var k in map){alert(map[k]);}可以使用jquery中的each()函数。
$.each(obj, function(i) {
alert(obj[i]);
});
function 也可以写为function(key,value){
}
key,value 就是map的key, valuejavascript中没有什么map
只有对象和数组可以遍历//你的JSON对象
var o = {
foo:"bar",
arr:[1,2,3],
subo: {
foo2:"bar2"
}
//处理每一项的键和值的函数
function process(key,value) {
document.body.innerHTML += key + " : " + value + "
";
//遍历函数
function traverse(o,func) {
for (i in o) {
func.apply(this,[i,o[i]]);
if (typeof(o[i])=="object") {
//递归
traverse(o[i],func);
}
//现在开始遍历
traverse(o, process);
jsp页面如何对map集合遍历
MapAction.java
Java代码
package com.zx.demo.action;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.opensymphony.xwork2.ActionSupport;
import com.zx.demo.model.Product;
import com.zx.demo.model.Student;
public class MapAction extends ActionSupport
private Map
map;
private Map
studentMap;
private Map
arrayMap;
private Map
> listMap;
public String testMap()
{
map=new HashMap
();
map.put("1", "one");
map.put("2", "two");
studentMap=new HashMap
();
studentMap.put("student1",new Student(new Long(1),"20034140201","张三1","男",25));
studentMap.put("student2",new Student(new Long(2),"20034140202","张三2","女",26));
studentMap.put("student3",new Student(new Long(3),"20034140202","张三3","男",27));
arrayMap=new HashMap
();
arrayMap.put("arr1", new String[]{"1","2003401","leejie","male","20"});
arrayMap.put("arr2", new String[]{"2","2003402","huanglie","male","25"});
arrayMap.put("arr3", new String[]{"3","2003403","lixiaoning","male","21"});
listMap=new HashMap
>();
List
list1=new ArrayList
();
list1.add(new Student(new Long(1),"20034140201","张三1","男",25));
list1.add(new Student(new Long(2),"20034140202","张三2","男",25));
list1.add(new Student(new Long(3),"20034140203","张三3","男",25));
listMap.put("class1", list1);
List
list2=new ArrayList
();
list2.add(new Student(new Long(1),"20034140301","李四1","男",20));
list2.add(new Student(new Long(2),"20034140302","李四2","男",21));
list2.add(new Student(new Long(3),"20034140303","李四3","男",22));
list2.add(new Student(new Long(4),"20034140304","李四4","男",23));
listMap.put("class2", list2);
return SUCCESS;
}
public Map
getMap() {
return map;
}
public void setMap(Map
map) {
this.map = map;
}
public Map
getStudentMap() {
return studentMap;
}
public void setStudentMap(Map
studentMap) {
this.studentMap = studentMap;
}
public Map
getArrayMap() {
return arrayMap;
}
public void setArrayMap(Map
arrayMap) {
this.arrayMap = arrayMap;
}
public Map
> getListMap() {
return listMap;
}
public void setListMap(Map
> listMap) {
this.listMap = listMap;
}
2.testMap.jsp
Java代码
1.map中的value为String字符串
key:
value:
******************************************
2.map中的value为Student对象
key=value | ID | num | name | sex | age |
3.map中的value为String数组
key=value | ID | num | name | sex | age |
4.map中的value为list集合
class | ID | num | name | sex | age |
${item.key}中的key的值是你定义的一个班级Class对象,它不是可遍历的对象。
${var.name}
${item.key.name}