javascript - jquery将数据保存在数组中

标签 javascript jquery

我想将每次点击数据保存并添加到数组中。我试过这个

var data = [];
var save = [];
s=0;
i=0;

some called function(){
  data[i++] = some result;
  data[i++] = some other result;
}

$('#someelement').click(function(){
save[s++] = data;
console.log(save); // for debugging
i = 0;
data = '';
});

第一次保存有效,但之后我只是添加了空数组。有什么指点吗?

最佳答案

这是因为您用字符串替换了数组。

data = '';

您应该将其替换为新的数组。

data = [];
<小时/>

或者通过添加data的浅拷贝到save来重用data数组,然后清除data

save[s++] = data.slice();

data.length = i = 0;

这允许引用data的任何其他代码保留其引用,以便它始终查看正在更新的data

关于javascript - jquery将数据保存在数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14204715/

相关文章:

javascript - "holds"addEventListener 是哪个对象?

JavaScript 执行 block 和消息队列

javascript - 在 css/js/jquery/html 中应用玫瑰色或更改整个文档的亮度?

jquery - 在更大的视口(viewport)上使用 css3 动画像素化扩展圆圈

javascript - 更改相应的输入字段时更改一个进度条

javascript - Kendo UI Dropdownlist 值的数据绑定(bind)

javascript - 使用javascript从html表中删除元素

javascript - 简单的股票代码 (jQuery)

javascript - (JavaScript+PHP) 在没有 40 个单独事件的情况下,我如何告诉 40 个按钮每个应用于它们所在的表格行?

javascript - 在计时器之后仅删除使用 jQuery 创建的最旧的元素