const ob = {user: {name: 'Jane', extension: '1234'}};
const param = 'name';
const path = `ob.user.${param}`;
console.log(path);
因此,这将显示“ ob.user.name”。我要打印的是“简”。如果我在eval()
上致电path
,可以这样做,但是我被告知eval()
缓慢,不安全,甚至可能致癌。
如何在不使用path
的情况下将值插值到path
并获得eval()
所引用的值?
(有问题的代码将在React组件中进行,我认为这排除了window对象的所有解决方案。)
答案 0 :(得分:0)
您也可以使用“数组符号”访问对象属性:
const ob = {user: {name: 'Jane', extension: '1234'}};
const param = 'name';
const path = ob.user[param];
console.log(path); // Outputs "Jane"