は、テストケースである:.attributesに無効な属性名が含まれているのはなぜですか?ここ
HTML:
<div id="div1" x="="y">Test</div>
JS:
var div1 = document.getElementById('div1');
var attributes = [];
for (var i=0, len=div1.attributes.length; i < len; i++) {
attributes[div1.attributes[i].nodeName] = div1.attributes[i].value;
}
console.log(attributes);
https://codepen.io/anon/pen/LyGdxd
私は属性がHTMLですでに無効であることを知っているが、なぜブラウザを行います無効なことが示唆されていますnodeName
。
無効なHTMLであれば問題はありません。要素に追加された属性はjavascriptで利用できるようになり、javascriptではHTMLを実際に検証しません。 – adeneo