我试图获取数组的长度并将其显示在页面上,如下所示:
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时遇到了什么问题。
答案 0 :(得分:3)
你甚至不必申报任何职能。
var someArray = ['item 1', 'item 2', 'item 3'];
document.getElementById("demo").innerHTML = someArray.length;
&#13;
<p id="demo"></p>
&#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() {...})
中)。