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