我对编码很陌生,所以如果这是一个基本问题太多,请原谅我。我正在通过codewars.com上的挑战来尝试提高我的编码能力。我目前正在处理的提示有以下提示:
列表是由嵌套对象组成的数据结构,每个嵌套对象包含一个值和对下一个对象的引用。编写一个函数listToArray(或Python中的list_to_array),用于将列表转换为数组。
我遇到的问题是列表。它们是嵌套的并且保持嵌套。我的问题是如果它进一步嵌套,如何访问每个对象的值?我相信如果我能弄清楚如何访问这些值,我应该能够很容易地创建数组。提前谢谢!
列表示例:
{value: 1, next: {value: 2, next: {value: 3, next: null}}}
期望的最终结果:[1, 2, 3]
到目前为止我所拥有的:
function listToArray(list) {
var arr;
for (var i in list) {
arr += list [i];
i++;
}
// return arr;
}
var list1 = {value: 1, next: {value: 2, next: {value: 3, next: null}}};
listToArray(list1)

答案 0 :(得分:0)
对于列表,通常使用while循环进行迭代。
function listToArray(list) {
var arr = [];
while(list !== null) {
arr.push(list.value);
list = list.next;
}
return arr;
}