[英]How do I get total number of objects in a variable only once?
我是JS的新手,所以在这方面有些挣扎。
$(function () {
$.ajax({
url: "some_url",
dataType: 'jsonp',
success: function (whatever) {
var allText = whatever.data._shared.text;
for (var i = 0; i < allText.length; i++) {
var text1 = allText[i];
var testHtml = "";
testHtml += "";
testHtml += "";
testHtml += "";
$("#text").append(testHtml);
document.write(allText.length);
}
}
});
});
在变量中,我希望返回的对象总数(allText = what.data._shared.text)。
我通过使用document.write(allText.length);进行了测试。 我得到正确的数字,但结果看起来像这样:
2020202020202020202020202020202020202020
因此,它似乎在重复。 如何在变量内仅获取一次而不是重复的实际值20?
您调用document.write(allText.length);
在 for循环中,因此每次迭代一次(因此您编写了20次)。 尝试在for循环外调用它:
var allText = whatever.data._shared.text;
for (var i = 0; i < allText.length; i++) {
var text1 = allText[i];
var testHtml = "";
testHtml += "";
testHtml += "";
testHtml += "";
$("#text").append(testHtml);
}
document.write(allText.length);
另外,请尝试使用浏览器的调试器(逐步进行)来了解发生了什么。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.