在java中我有hashmap
Map<String , List<Employee>> employeeMap = new HashMap<String , List<Employee>> ();
employeeMap.put(1, new Employee());
........
我将其添加到请求属性
中现在在javascript中我需要遍历地图,获取密钥和值
这是我试过的
方法1: -
var empMap = '${employeeMap}';
//here is the example value of map in javascript which i see while debugging
//var empMap = {emp1_100=[com.Employee@5b7b4bc5], emp2...
for (var key in empMap) {
alert(key + ': ' + empMap[key]);
}
但是语法错误
SyntaxError: missing : after property id
方法2:与jquery
var jsonMap = $.stringify(empMap);
$.each( jsonMap, function( key, value ) {
alert( key + ": " + value );
});
但它也不起作用。它打印一些字符。
我不确定我在这里缺少什么?
答案 0 :(得分:1)
看起来你只是在编写Map的.toString()方法返回给请求,这首先不是一个好主意。
如果我是你,我会将你的Map转换成一个JSON对象(有各种方法可以做到这一点,具体取决于你的系统),然后将这个JSON对象的String表示附加到请求,因为那样你就可以简单地调用&#34; JSON.parse(...);&#34;在JavaScript中将其转换为JavaScript对象,而无需自己进行任何解析。