在Immutable.js对象中检查深度值的最佳方法是什么?

时间:2016-09-19 08:20:12

标签: immutable.js

如何检查Immutable对象中的 name 值?

var A = new Immutable.fromJS({
  b: {
   b2: {
    b21: {
     name: 'ok'
    }
  }
 }
})

我只有这个解决方案,这看起来不太好。:

if (A.has('b') && A.get('b').has('b2') && A.get('b').get('b2').has('b21')) {
  console.log(A.get('b').get('b2').get('b21').get('name'))
}

1 个答案:

答案 0 :(得分:4)

您可以使用hasIn和getIn方法检查

if(A.hasIn(["b", "b2", "b21", "name"])) {
    console.log(A.getIn(["b", "b2", "b21", "name"]))
}