如何在JS对象

问题描述:

这里用户每次拿到最后一个属性值选择一些选项,节点对象,并将状态,我需要一个最后一个节点对象的状态后如何在JS对象

var breadCrumb = [{ 
     breadCrumbN: { 
      node: { 
      state: "test", 
      node: { 
       state: "test^test2", 
       node: { 
       state: "test^test2^test3", 
       node: { 
       state: "test^test2^test3^test4" // like to post the last state. the node object will be added for each selection 
       } 
       } 
      } 
      } 
     } 
    }] 
+0

看起来你正在寻找树的遍历,如果你知道那是什么。 – Andrew

+0

所以,你需要继续遍历,直到你用完'node'属性并且只剩下'state'属性? – gurvinder372

尝试这种解决方案与递归。

let obj = { 
 
    node: { 
 
     state: "test", 
 
     node: { 
 
     state: "test^test2", 
 
     node: { 
 
      state: "test^test2^test3", 
 
      node: { 
 
       state: "test^test2^test3^test4" 
 
      } 
 
     } 
 
     } 
 
    } 
 
}; 
 

 
function getLastNodeState(obj) { 
 
    return obj.node ? getLastNodeState(obj.node) : obj.state; 
 
} 
 

 
console.log(getLastNodeState(obj));

+0

在这种情况下,我有一个数组内的对象? –

+0

无论如何,您需要为每个项目的'breadCrumbN'属性调用此函数 - getLastNodeState(item.breadCrumbN) –

+0

很酷,明白了。谢谢! 这里: 变种X =功能大通(){VAR Y = { 名称: “测试” } 返回是 } 如何添加一个值到y的对象? –