如何检查给定变量是否是html元素的集合?

时间:2011-06-02 06:59:24

标签: javascript

例如getElementsByClassNamegetElementsByTagName生成的数据类型。

2 个答案:

答案 0 :(得分:1)

使用此代码:

var result = document.getElementsByTagName("div");
if (result && result.constructor.name == "NodeList"){
// your code here ;)
} 

或者这可能是更安全的浏览器

var result = document.getElementsByTagName("div");
if (result && getClassName(result) == "htmlcollection"){
// your code here ;)
}     
function getClassName(obj){
    return ({}).toString.call(obj).match(/\s([a-zA-Z]+)/)[1].toLowerCase();
}

答案 1 :(得分:0)

试试这个:

function isCollection(input)
{
    return input.item != undefined;
}

但要注意定义item方法的任何其他对象。