0

我想将 Element 的 childNodes 转换为 javascript 中的数组。

如何将 childNodes 转换为数组?有什么好主意吗?

4

2 回答 2

1

我用 _.toArray() 做到了这一点

html部分:

<div id="testdiv"><div id="t1"></div><div id="t2"></div><div id="t3"></div><div id="t4"></div><div id="t5"></div></div>

js:

var td = document.getElementById("testdiv");
console.log(_.toArray(td.childNodes));
于 2013-03-07T05:53:13.633 回答
1

不需要下划线,我想到了:[].concat.apply([],nodelist)

但是,由于较旧的浏览器需要数组而不是类似数组的对象,因此它不适用于所有浏览器,所以我只使用它:

function toarray(obj) {
    var l = obj.length, i, out = [];
    for(i=0; i<l; i++) out[i] = obj[i];
    return out;
}

这可能是最简单的方法,也是最兼容的。

于 2013-03-07T02:03:58.857 回答