将java地图转换为javascript地图并循环以获取键/值?

时间:2015-07-20 10:58:40

标签: javascript java jquery json

在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 );
});

但它也不起作用。它打印一些字符。

我不确定我在这里缺少什么?

1 个答案:

答案 0 :(得分:1)

看起来你只是在编写Map的.toString()方法返回给请求,这首先不是一个好主意。

如果我是你,我会将你的Map转换成一个JSON对象(有各种方法可以做到这一点,具体取决于你的系统),然后将这个JSON对象的String表示附加到请求,因为那样你就可以简单地调用&#34; JSON.parse(...);&#34;在JavaScript中将其转换为JavaScript对象,而无需自己进行任何解析。