gpt4 book ai didi

javascript - JavaScript 中的列表到数组

转载 作者:行者123 更新时间:2023-12-03 05:46:02 25 4
gpt4 key购买 nike

我正在关注 Eloquent JavaScript当然,我进行了一个练习,您必须从列表中生成一个数组。
这是列表:

var list = {value: 10, rest: {value: 20, rest: null}}

这是“建议的”代码/过程:

function listToArray(list) {
var array = [];
for (var node = list; node; node = node.rest)
array.push(node.value);
return array;
}

我很难理解for循环行,有人可以一步一步向我解释吗?
我的意思是,类(class)中对此进行了解释:

To run over a list (in listToArray and nth), a for loop specification like this can be used:

for (var node = list; node; node = node.rest) {}

Can you see how that works? Every iteration of the loop, node points to the current sublist, and the body can read its value property to get the current element. At the end of an iteration, node moves to the next sublist. When that is null, we have reached the end of the list and the loop is finished.

但如果可能的话,我想了解每一步是如何“工作”的(也许有示例)。

最佳答案

你的标准 for 循环将是这样的:

for(var i = 0; i < something; i++)

这会使用 i 为零来初始化循环。第二个参数是 bool 值,如果为 true,则循环运行。最后在 den end 你将 i 加一。

你的循环是相同的:

for (var node = list; node; node = node.rest)

它通过将迭代器变量(在本例中为节点)设置为列表来初始化循环。然后它进行 bool 检查(是否存在节点),最后将当前节点设置为休息。

关于javascript - JavaScript 中的列表到数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40330579/

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