繁体   English   中英

如何仅获取一次变量中的对象总数?

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM