gpt4 book ai didi

javascript - 在 Javascript 中迭代一个 List 对象

转载 作者:行者123 更新时间:2023-11-29 23:55:57 26 4
gpt4 key购买 nike

如何在 Javascript 中遍历 List 对象?它包含超过 1 个值。

 List <controllerclass> obj = dao.listimpl();

我试过这个:

 for (index = 0; index < obj .length; ++index) {
console.log(obj [index]);
}

最佳答案

循环使用 Iterators in Javascript is new to ES6并在下面解释。

MDN Iterators and generators - 解释说,在 Javascript 中,迭代器是一个只有 next() 方法的数据对象。 Iterator.next() 返回的结果有一个 next() 方法、done 和 value 属性。下面显示了一个使用 Javascript Set 对象的示例。

let aCollection = new Set(['item1', 'item2', 'item3']);
let it = aCollection[Symbol.iterator]();
console.log('iterator is', it)
console.log('it.done - is not meaningful', it.done); // notice that it.done is not defined!
let itLoop = it.next()
console.log('it.next()', itLoop);
console.log('it.next().value', itLoop.value);
console.log('it.next().done', itLoop.done);

上述示例代码的输出是:

iterator is SetIterator { 'item1', 'item2', 'item3' }
it.done - is not meaningful undefined
it.next() { value: 'item1', done: false }
it.next().value item1
it.next().done false

Set.prototype@@iterator - 解释如何使用 Set 迭代器。令我困惑的是为什么示例不包括循环,所以我在下面提供了示例。

用于...的

使用迭代器进行循环的最简单方法是使用 for(item of collection) 语法,如 here in MDN 所述.循环的更完整描述是 covered very well here .

for(let item of aCollection){
console.log('for...of returns ', item);
}

使用 for(;;)

接下来是使用迭代器的 for 循环。

for(let it = aCollection[Symbol.iterator](), loop = it.next(); ! loop.done; loop = it.next()){
console.log('for(;;) ', loop.value);
}

使用 while 循环

接下来是使用迭代器的 while 循环:

let it = aCollection[Symbol.iterator]();
let loop = it.next();
while (! loop.done){
console.log('while loop ', loop.value);
loop = it.next();
}

希望这对某人有所帮助。完整的可运行示例位于 https://jsfiddle.net/PatS2265/y5a4hvb7/4/。 .没有 HTML 或 CSS,只有 Javascript console.log 输出,所以打开浏览器控制台窗口查看输出。

关于javascript - 在 Javascript 中迭代一个 List 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41700294/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com