在for of
循环中,我想为每个DOM元素创建一个不同的变量(以迭代编号结尾),以便我可以在后面使用它们:
for ( let i of document.querySelectorAll('.formClient.error') ) {
var elem+iteractionNumber = i
}
我不知道我将获得多少元素,而且我不想创建全局变量(此代码段将与预定义的有限范围一起使用,我不想污染全局范围)。
答案 0 :(得分:1)
我想你可以这样做:
window['someprefix_' + i] = i;
但这确实不是一个好方法。
你可以存储这是一个更好的对象:
var hash = {};
// the loop
for ( let i of document.querySelectorAll('.formClient.error') ) {
hash[i] = i;
}
如果您使用的是ES6功能,那么使用数组的foreach可以做得更好:
let hash = {};
[].forEach.call(document.querySelectorAll('.formClient.error'), (item, index) => {
hash[index] = item;
})