Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将变量推入数组并在每次单击时更新数组?_Javascript_Jquery_Arrays - Fatal编程技术网

Javascript 将变量推入数组并在每次单击时更新数组?

Javascript 将变量推入数组并在每次单击时更新数组?,javascript,jquery,arrays,Javascript,Jquery,Arrays,我通过单击一个项目将一个变量保存到数组中,但每次单击不同的项目时,这应该会改变。目前,这是警告相同的值,而不是新值 <div class="item"> <span id="0" class="video" data-vimeoid="http://vimeo.com/XXX"></span> </div> <div class="item"> <span id="1" class="video" data-vime

我通过单击一个项目将一个变量保存到数组中,但每次单击不同的项目时,这应该会改变。目前,这是警告相同的值,而不是新值

<div class="item">
     <span id="0" class="video" data-vimeoid="http://vimeo.com/XXX"></span>
</div>
<div class="item">
  <span id="1" class="video" data-vimeoid="http://vimeo.com/SSS"></span>
</div>
<div class="item">
  <span id="2" class="video" data-vimeoid="http://vimeo.com/ZZZ"></span>
</div>
你应该这样做

var previous = [];
$(document).on( 'click', '.item:not(.is-expanded)', function() {
    var url = videoSpan.data("vimeoid");
    previous.push(url);
    alert(previous[previous.length-1]);
});

我以为.push()正在替换该值,而.add()正在添加no
。push()
将推送一个新元素。如果它解决了您的问题,请考虑投票表决并将其标记为正确答案。Nope push将添加到数组的末尾。有关详细信息,请参阅文档:@rob.m尝试学习不使用alert进行调试。如果执行了
console.log(上一个)
操作,您将在浏览器控制台中看到整个数组。@void将执行一次,我将能够;)末端推压不改变
0次
var previous = [];
$(document).on( 'click', '.item:not(.is-expanded)', function() {
    var url = videoSpan.data("vimeoid");
    previous.push(url);
    alert(previous[previous.length-1]);
});