如何将字符串结果收集到 for Each 循环内的单个数组中
<ul>
<li data-tag="two"></li>
<li data-tag="three"></li>
<li data-tag="four"></li>
<li data-tag="five"></li>
</ul>
<button id="ev">Click</button>
JavaScript:
var elem = Array.prototype.slice.call(document.querySelectorAll('ul > li'));
document.getElementById('ev').addEventListener('click', function(ev){
elem.forEach( function(el,i) {
var ar = ["one"];
var tags = el.getAttribute('data-tag');
ar.push(tags);
});
});
结果:
["one", "two"]
["one", "three"]
["one", "four"]
["one", "five"]
预期结果:
["one", "two", "three", "four", "five"]
最佳答案
在forEach
之前初始化arr
var elem = Array.prototype.slice.call(document.querySelectorAll('ul > li'));
document.getElementById('ev').addEventListener('click', function(ev) {
var ar = ["one"];
elem.forEach( function(el,i) {
var tags = el.getAttribute('data-tag');
ar.push(tags);
});
console.log(ar);
});
<ul>
<li data-tag="two"></li>
<li data-tag="three"></li>
<li data-tag="four"></li>
<li data-tag="five"></li>
</ul>
<button id="ev">Click</button>
关于javascript - 将字符串收集到 forEach 内的单个数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33626748/