Javascript 如何在循环jQuery中以数组形式存储数据
如何将数据存储在循环中的数组中Javascript 如何在循环jQuery中以数组形式存储数据,javascript,jquery,Javascript,Jquery,如何将数据存储在循环中的数组中 var images; var i = 0; $('#cover div').each(function() { alert($(this).attr('id')); //I should store id in an array }); <div id="cover"> <div id="slider_1"><p class="co
var images;
var i = 0;
$('#cover div').each(function()
{
alert($(this).attr('id'));
//I should store id in an array
});
<div id="cover">
<div id="slider_1"><p class="content">SLIDER ONE</p></div>
<div id="slider_2"><p class="content">SLIDER TWO</p></div>
<div id="slider_3"><p class="content">SLIDER THREE</p></div>
</div>
var图像;
var i=0;
$(#cover div')。每个(函数()
{
警报($(this.attr('id'));
//我应该将id存储在数组中
});
滑块一
滑块二
滑块三
试试这个
var arr = [];
i = 0;
$('#cover div').each(function()
{
alert($(this).attr('id'));
arr[i++] = $(this).attr('id');
//I should store id in an array
});
另一种获取id的方法是使用javascript对象而不是jquery来提高性能
var arr = [];
i = 0;
$('#cover div').each(function()
{
arr[i++] = this.id;
});
编辑您也可以使用jQuery
arr = $('#cover div').map(function(){
return this.id;
});
javascript数组具有如下方法推送(el):
var images;
var i = 0;
$('#cover div').each(function()
{
alert($(this).attr('id'));
images.push($(this).attr('id'));
});
<div id="cover">
<div id="slider_1"><p class="content">SLIDER ONE</p></div>
<div id="slider_2"><p class="content">SLIDER TWO</p></div>
<div id="slider_3"><p class="content">SLIDER THREE</p></div>
</div>
var图像;
var i=0;
$(#cover div')。每个(函数()
{
警报($(this.attr('id'));
images.push($(this.attr('id'));
});
滑块一
滑块二
滑块三
为什么不干脆将它推到阵列上,而不是在计数器上浪费时间?或者对。每个回调函数使用index参数。不使用arr.push($(this.attr('id'))
的原因是什么。。。晚了4秒,哈哈。@Benno:Push比不使用jQuery的代码样本慢,请参阅我创建的性能测试:但是,Push似乎比使用jQuery选择id的第一个代码样本快。同样,在这种情况下,请使用第二个代码样本。感谢您告诉@François Wahl,事实上,javascript通常比jquery具有更高的性能,但在这种情况下并非如此。第一个javascript最快的原因是因为您没有运行$.attr
调用。