我正在自定义一些 jQuery
插件,但出现一条我无法理解的错误消息
var totHistory=0;
var positions = new Array();
$('.someclass').each(function(index){
var tmp = $(this).val();
addHistory({id:tmp});
});
function addHistory(obj)
{
/* Gets called on page load for each comment, and on comment submit */
totHistory++;
positions.push(obj.id);
}
在 .someClass
的第一次迭代中,我收到这条消息
Cannot call method 'push' of undefined
谁能解释一下为什么?
最佳答案
您应该将 positions
作为参数发送,或者在 addHistory
可访问的范围内声明它。你不应该在没有 var 关键字的情况下声明它,因为这被认为是一种不好的做法。
试试我的第一个建议,因为这是我唯一可以在不知道你的其他 js 代码结构的情况下帮助你的建议。
关于javascript - 在javascript中推送json数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19030275/