我是JQuery的新手。我写了以下函数,我可以在控制台中查看创建的数组,所以我知道该函数可以正常工作。我的问题是如何使用函数外的数组?我试过插入return arr;在函数的最后,但我似乎无法访问数组值!
function css_ts() {
arr = [];
$('.timeslot').each(function(){
var bid = $(this).children("input[type='hidden']").val();
if (bid > 0) {
$(this).css('background-color','blue');
arr.push(bid);
}
else
{
$(this).css('background-color','#ececec');
}
});
console.log($.unique(arr));
}
答案 0 :(得分:1)
在var
之前添加arr = [];
,这使其成为您的函数的本地版本,并且您将能够在最后返回它。
答案 1 :(得分:1)
arr
内css_ts
隐式全局,因为您省略了var
关键字。在声明/初始化变量时,您应始终使用var
:
var arr = [];
将以下行添加到函数末尾:
return arr;
然后像这样使用它:
var arr = css_ts();
答案 2 :(得分:0)
你是否在函数内部或函数外声明了arr []?如果你确实在函数内创建了它,那么由于变量的范围,没有其他函数可以看到这个变量。将声明移到函数外部并尝试一下。我希望这会有所帮助。