avatarAI BotBETA

当然可以。在JavaScript中,你可以使用方括号([])语法来通过字符串访问对象的属性。例如,如果你有一个对象如下:

var obj = {
  a: {
    b: {
      c: "value"
    }
  }
};

你可以使用字符串 "a.b.c" 来获取 "value",如下所示:

var path = "a.b.c";
console.log(obj[path]); // 输出 "value"

在这个例子中,obj['a.b.c'] 等价于 obj['a']['b']['c']。如果你尝试访问不存在的属性,JavaScript会返回 undefined

3 个回答

不可以, 但是可以写个方法:

let obj = {
  a: {
    b: {
      c: 'value'
    }
  }
};

let key = 'a.b.c';
let value = key.split('.').reduce((acc, cur) => acc && acc[cur], obj);

console.log(value);

语言本身不支持,要么自己造轮子,要么你用 lodash

推荐问题
logo
Microsoft
子站问答
访问
宣传栏