为什么我在控制台中获得'未定义'?
这个问题在这里已经有了答案:
JavaScript中的for…in
循环通过对象的键循环,而不是其值。 你可以使用Array.prototype.forEach
,给予支持; $.each
可以作为后备,因为你使用的是jQuery。
var textArray = ['#text1', '#text2', '#text3', '#text4',
'#text5', '#text6', '#text7', '#text8'];
$('#capture').click(function() {
textArray.forEach(function (x) {
console.log($(x).offset());
});
});
因为i
是数组中项目的索引,所以您需要使用textArray[i]
来访问当前项目(如果您记录了i
的值,它将显示0,1,2 ... 7)。
for (var i in textArray) {
console.log($(textArray[i]).offset());
}
您可能想要像这样索引数组:
var textArray = ['#text1', '#text2', '#text3', '#text4',
'#text5', '#text6', '#text7', '#text8']
$('#capture').click(function() {
for (var i in textArray) {
console.log($(textArray[i]).offset());
}
});
链接地址: http://www.djcxy.com/p/12061.html