在更改时删除数组中的所有内容并在其中添加新值

时间:2015-11-26 07:42:22

标签: javascript jquery arrays

我有功能,改变调用方法' saveSelectedValue'。

  this.$filtercat.on('change', { that : this }, this.saveSelectedValue);

此方法只做一件事:在数组中保存数据。

  saveSelectedValue : function (e) {
    var that = e.data.that,
    selectArray = that.filterSelectedCategories;
    selectArray.push($('.posts-filter-cat').val());
    console.log(selectArray); //every time gives me extended array  
},

现在我正在为现有数组添加新值。但是我希望删除所有内容并在每次更改时在数组中添加新值。

1 个答案:

答案 0 :(得分:0)

在推送新值之前,您需要清除数组。删除所有现有值的简便方法是将长度设置为0

saveSelectedValue : function (e) {
    var that = e.data.that,
    selectArray = that.filterSelectedCategories;
    selectArray.length = 0; // clear selectArray array
    selectArray.push($('.posts-filter-cat').val());
    console.log(selectArray);
},