从键串到哈希值

时间:2018-11-13 08:48:56

标签: javascript

我有一个像下面这样的哈希

aa: {
  categories: {
   cat1: 'alpha'
  }
}

如何从字符串'aa.categories.cat1'开始,alpha如何使用普通JS?

2 个答案:

答案 0 :(得分:2)

使用split()reduce()

const result = path.split('.').reduce((a, v) => a[v], object);

完整代码段:

const object = {
  aa: {
    categories: {
      cat1: 'alpha'
    }
  }
}

const path = 'aa.categories.cat1';

const result = path.split('.').reduce((a, v) => a[v], object);

console.log(result);

答案 1 :(得分:0)

您可以使用“ Array.split”和“ Array.reduce”来实现

var obj = {
  aa: {
    categories: {
      cat1: 'alpha'
    }
  }
}

function getValue(d) {
  return d.split('.').reduce((o, v) => o[v], obj) 
}

console.log(getValue('aa.categories.cat1'))