如果我像getElementById()
那样获取锚点链接,然后将该变量传递给另一个函数,它会以字符串还是对象的形式传递?是一个传递给函数的元素是字符串还是对象?
我知道这是一个愚蠢的问题,但任何帮助,将不胜感激。
如果我像getElementById()
那样获取锚点链接,然后将该变量传递给另一个函数,它会以字符串还是对象的形式传递?是一个传递给函数的元素是字符串还是对象?
我知道这是一个愚蠢的问题,但任何帮助,将不胜感激。
的getElementById的()的结果是一个对象
这将被传递在作为对象
的对象。您将可以访问该标签的属性。
foo(document.getElementById('someID'));
function foo(element) {
alert(element.href)
alert(element.innerHTML);
}
getElementById返回一个DOM元素。当你将它存储在一个变量中或者作为参数传递给一个函数时,它的类型不会改变。
typeof document.getElementById("someAnchorId") // -> "object"
document.getElementById("someAnchorId").constructor // -> "HTMLAnchorElement() [...]"
有时你对待变量的方式会将其转换为字符串意外。例如,如果将它附加到一个字符串,JavaScript会自动将.toString()对象。也许这种行为就是你遇到的。
所以一个字符串就像是一个类名或ID名,但是当我在DOM中得到一个元素后,它总是一个对象,对吗? – Zoolander
正确(如果我理解你的问题) - – antlersoft