未捕获的TypeError:无法调用未定义的方法'push'

Spe*_*123 4 javascript google-chrome syntax-error google-maps-api-3

我已经坚持了几天这个错误,任何一种灵魂都可以破译这个错误吗?警报显示所需的正确数据但不知何故push()方法不起作用..提前感谢!

Kar*_*rol 6

说起来并不容易,但根据评论,你正在调用push方法的对象可能就是undefined.这object应该是一个array.

替换此行:

layer[result['layerId']].push(result);
Run Code Online (Sandbox Code Playgroud)

使用以下代码:

if("undefined" != typeof layer[result['layerId']]) {
    layer[result['layerId']].push(result);
}
else {
    layer[result['layerId']] = new Array();
    layer[result['layerId']].push(result);
}
Run Code Online (Sandbox Code Playgroud)

如果有效,请告诉我.