我有一个问题。 我最近在Dreamweaver中编写了一些javascript代码,并且每次我处理元素数组时它的代码都会完整,它会给我array.item(n)而不是array [n]
这两者有什么区别?
一些示例代码:
function hideAllSubMenu(){
var submenu = document.getElementsByTagName("div");
for(var i = 0; i < submenu.length; i++)
{
if(submenu.item(i).className == "submenu_wrap")
submenu.item(i).style.display = "none";
}
}
然而,它也可以用这样的方式写作
function hideAllSubMenu(){
var submenu = document.getElementsByTagName("div");
for(var i = 0; i < submenu.length; i++)
{
if(submenu.[i].className == "submenu_wrap")
submenu.[i].style.display = "none";
}
}
像我这样的人在学习核心javascript的第一步中有点困惑。 有人可以向我解释有什么不同吗
答案 0 :(得分:4)
在 DOM 的某些节点列表中可以使用项方法。
[]是数组访问器。
因此,在使用DOM进行操作时,您可以使用 item 。但不是普通阵列 一般来说,我建议总是使用[],因为它只适用于所有情况。
答案 1 :(得分:1)
我认为你的意思是submenu[i]
在第二个例子中,项目(n)和[n]是同义词
答案 2 :(得分:1)
首先,Javascript中没有内置的任何内容,例如Array.item
。
document.getElementsByTagName返回一个nodelist
对象,其外观和行为类似于数组,但它不是数组。但是,nodelist[i]
和nodelist.item(i)
是等效的。