Javascript访问列表i中的嵌套对象

Javascript访问列表i中的嵌套对象,javascript,arrays,object,nested,Javascript,Arrays,Object,Nested,我对编码非常陌生,所以如果这是一个太基本的问题,请原谅。我正在经历codewars.com上的挑战,试图提高我的编码能力。我当前正在处理的程序有以下提示: 列表是由嵌套对象组成的数据结构,每个对象都包含一个值和对下一个对象的引用。编写一个函数listToArray(或Python中的listToArray)将列表转换为数组 我遇到的问题是名单。它们是嵌套的,并保持嵌套。我的问题是,如果每个对象嵌套得越来越深,如何访问该对象的值?我相信如果我能弄清楚如何访问这些值,我应该能够非常轻松地创建数组。提

我对编码非常陌生,所以如果这是一个太基本的问题,请原谅。我正在经历codewars.com上的挑战,试图提高我的编码能力。我当前正在处理的程序有以下提示:

列表是由嵌套对象组成的数据结构,每个对象都包含一个值和对下一个对象的引用。编写一个函数listToArray(或Python中的listToArray)将列表转换为数组

我遇到的问题是名单。它们是嵌套的,并保持嵌套。我的问题是,如果每个对象嵌套得越来越深,如何访问该对象的值?我相信如果我能弄清楚如何访问这些值,我应该能够非常轻松地创建数组。提前谢谢

列表示例:
{value:1,next:{value:2,next:{value:3,next:null}}

期望的最终结果:
[1,2,3]

到目前为止,我所拥有的:

函数列表阵列(列表){
var-arr;
用于(列表中的var i){
arr+=列表[i];
i++;
}
//返回arr;
}
var list1={value:1,next:{value:2,next:{value:3,next:null}};

listToArray(list1)
对于列表,您通常使用while循环进行迭代

function listToArray(list) {
  var arr = [];
  while(list !== null) {
    arr.push(list.value);
    list = list.next;
  }
  return arr;
}

非常感谢!我试图理解这里的一切,主要是。下一个属性(?)。next是一个实际的Javascript关键字,还是仅仅因为它被选中而存在(例如,可以在对象和函数中用“dog”替换,并且仍然完成相同的任务)?第二个答案。在js对象(
{…}
)中,您可以根据需要命名密钥,然后通过
object.dog
var myVar='dog'访问它们;对象[myVar]
您可以尝试将代码替换为
next
dog
list1。next是
{value:2,next:{value:3,next:null}}
etcNo,“next”不是javascript关键字。查看您的数据,“下一步”是一个键,您可以使用它访问数据层次结构的嵌套级别。