未捕获的TypeError:当javascript中的readind map时,undefined不是函数

时间:2014-12-18 14:00:21

标签: javascript

我在java脚本中创建了一个地图我试图进入else块并且我得到以下错误。 我无法正确理解和调试它。

Uncaught TypeError: undefined is not a function
fruits : apple,orange,pineapple
countries:usa,uk,india,australia
cities:frankfurt,berlin,moscow

var map ={}; 

map['fruits'] = myObj1;
map['countries'] = myObj2;
map['cities'] = myObj2;

function get(k) {
    return map[k];
}

if{

//dosomething

}

else{
var test2=map.get('fruits');

}

2 个答案:

答案 0 :(得分:1)

尝试

var test2 = get('fruits');

因为地图没有方法获取

或更改地图对象

var map = { get: function (key) { return this[key] }}; 

答案 1 :(得分:0)

get函数不是map的成员,因此调用map.get('fruits')并不起作用。要么自己致电get('fruits'),要么让get成为map的成员:

map.get = function(k) {
    return this[k];
}