Javascript Node.childNodes的forEach方法?
在为一个问题提供了关于的Javascript Node.childNodes的forEach方法?,javascript,google-chrome,dom,chromium,nodelist,Javascript,Google Chrome,Dom,Chromium,Nodelist,在为一个问题提供了关于的.item()属性之后,我检查了表单元素的返回的子节点,并找到了一个forEach方法 Node.childNodes的forEach方法未记录在或的规范中,也未在或链接到该问题的页面中提及;虽然它似乎在铬50可用 该方法是否仅适用于相对较新版本的Chrome/Chrome?如果是,是否有文件记录 是否有关于Node.childNodes的forEach()方法的文档 document.querySelector(“表单”).addEventListener(“提交”
.item()
属性之后,我检查了表单
元素的返回的子节点
,并找到了一个forEach
方法
Node.childNodes
的forEach
方法未记录在或的规范中,也未在或链接到该问题的页面中提及;虽然它似乎在铬50可用
该方法是否仅适用于相对较新版本的Chrome/Chrome?如果是,是否有文件记录
是否有关于Node.childNodes
的forEach()
方法的文档
document.querySelector(“表单”).addEventListener(“提交”,函数(e){
e、 预防默认值();
var form=e.target;
form.childNodes.forEach(函数(el){
if(el.tagName==“输入”&&el.type!==“提交”)
log(“名称:“+el.name+”,值:“+el.value”)
});
});代码>
DOM4现在定义为一个iterable:
iterable<Node>;
对象,该对象实现一个声明为iterable的接口
支持迭代以获取值序列
注意:在ECMAScript语言绑定中,一种
iterable将具有“条目”、“forEach”、“键”、“值”和
其上的属性
如果给定了单个类型参数,则接口具有值
迭代器并提供指定类型的值
该方法是否仅适用于相对较新版本的Chrome/Chrome?如果是,是否有文件记录
是的,这在DOM4中是新的,因此没有广泛可用
是否有关于Node.childNodes的forEach()方法的文档
请参阅Chromium bug tracker上的:
从
DOM4将节点列表指定为在其原型链中具有Array.prototype
还有一些关于这个的背景。[ArrayClass]允许我们执行document.querySelectorAll(“.foo”).forEach等操作。bugs.webkit.org上的补丁有一个运行时标志,因为不清楚这是否仍然可以实现
从历史上看,这些类似数组的对象不包括数组原型中的这些方法,导致类似于array.prototype.forEach.call(nodeList,function(){…})
的代码。这现在意味着在DOM4中改变
iterable<value-type>;
iterable<key-type, value-type>;