【问题标题】:Array is not getting empty数组没有变空
【发布时间】:2015-01-05 12:40:11
【问题描述】:

我有一个数组search_by_type,它在顶部声明。现在,在每次点击中,我都将 rest_type_id 值设置为工作正常的数组。

现在其他页面操作正在调用get_all_restro() 函数,该函数将清空数组search_by_type。当我再次单击restro_type_filter 类时,它会打印一个数组,该数组的值意味着它不会变空。

var search_by_type = new Array();

$(document).on("click",".restro_type_filter",function(){

    console.log(search_by_type);

    var rest_type_id = $(this).attr('rest_type_id');
    search_by_type.push(rest_type_id); 


});

function get_all_restro(type){

    search_by_type.length = 0;

}

编辑:

好吧,伙计们,函数 get_all_restro() 出现错误 - Cannot set property 'length' of undefined 我应该如何解决这个问题?这个错误是否会造成问题?

这里发生了什么,我做错了什么?

提前致谢。

【问题讨论】:

  • 你能建立一个最小的小提琴来重现这个错误吗?
  • 问题可能是调用 get_all_restro 的页面操作本身没有被调用。你知道是否曾经调用过页面操作吗?
  • 对于假装无法通过将长度设置为 0 来重置数组的人,这里是 MDN 的摘录:“您可以随时设置长度属性来截断数组。 "

标签: jquery arrays


【解决方案1】:

尝试重新初始化它:

search_by_type = new Array();

search_by_type = [];

完整代码:

function get_all_restro(type){

    search_by_type = new Array();

}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-09-14
    • 1970-01-01
    • 2015-05-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-05
    相关资源
    最近更新 更多