我一直在寻找答案,但我只能得到有关Google地图API的结果。我正尝试在JavaScript中使用映射将整数映射到字符串。一切工作正常在Firefox,但在铬我在控制台收到一条错误消息:Google Chrome中没有定义地图()
Uncaught ReferenceError: Map is not defined
下面是一段基准代码:
var NameMap;
var DistanceMap;
function FillMaps(){
NameMap = new Map();
DistanceMap = new Map();
NameMap.set(01, "Araba/Álava");
}
function CheckName(_field){
var value = document.getElementsByName(_field.name).item(0).value;
var location = value.charAt(0) + value.charAt(1);
var result = NameMap.get(parseInt(location));
if(result == undefined){
result = "Unknown";
}
document.getElementById('loc').innerHTML = result;
}
确实,我可以使用一个数组作为我的例子doh!但我可能需要将字符串映射到未来的字符串,任何想法用chrome修复它? – Nick
对象可用于此目的。一个数组也可以做到这一点,但这是不好的做法(参见http://andrewdupont.net/2006/05/18/javascript-associative-arrays-considered-harmful/)。 Map没有出现在[javascript reference](http://www.w3schools.com/jsref/)中,我认为它是由Firefox添加的,尽管它甚至不出现在mozilla参考中。 – user2313067