Javascript - 返回函数中的数组长度

时间:2017-02-12 23:35:56

标签: javascript arrays

我试图获取数组的长度并将其显示在页面上,如下所示:

var someArray = ['item 1', 'item 2', 'item 3'];

var getArrayLength = function() {
    return someArray.length;
}

getArrayLength();

由于某些原因,这不起作用。我试图替换元素的innerHTML,同样的问题。

<p id="demo"></p>
document.getElementById("demo").innerHTML = someArray.length;

即使我将变量设置为等于someArray.length然后返回变量,它也不起作用。我没有得到任何错误,只是没有结果。在函数中返回数组的长度有什么特别之处吗?

我能够使用jQuery解决这个问题,我只是好奇我在使用vanilla javascript时遇到了什么问题。

3 个答案:

答案 0 :(得分:3)

你甚至不必申报任何职能。

&#13;
&#13;
var someArray = ['item 1', 'item 2', 'item 3'];

document.getElementById("demo").innerHTML = someArray.length;
&#13;
<p id="demo"></p>
&#13;
&#13;
&#13;

答案 1 :(得分:1)

实际上你的代码正在运行,但你实际上并没有尝试显示任何东西。在你的情况下添加实际给你输出的东西。

var someArray = ['item 1', 'item 2', 'item 3'];

var getArrayLength = function() {
    return someArray.length;
}

console.log(getArrayLength());
alert(getArrayLength());

答案 2 :(得分:1)

加载文档后,您必须设置innerHTML(或textContent哪个更好)。试试这个:

window.addEventListener("load", function() {
    document.getElementById("demo").textContent = someArray.length;
});

jQuery代码正在运行,因为它在内部等待加载事件(假设您已将代码包装在$(function() {...})中)。