Javascript 从通过管道从html传递的对象获取数据

Javascript 从通过管道从html传递的对象获取数据,javascript,angular,typescript,Javascript,Angular,Typescript,当我想从这样的对象获取数据时 const translate = {home:title:'Home'}} 我们使用home.title,这样就可以了 但我需要将此主页。title更改为[home][title] 我需要这个,因为我制作了管道,用这个管道,我从HTML视图发送值,就像 {{ "home.title" | getTranslate}} 我需要从数组中获取值,比如说arr[home.title],但这不起作用,我需要这个arr[home][title] 编辑: 我将值从HTML转

当我想从这样的对象获取数据时

const translate = {home:title:'Home'}}
我们使用
home.title
,这样就可以了

但我需要将此
主页。title
更改为
[home][title]

我需要这个,因为我制作了管道,用这个管道,我从HTML视图发送值,就像

{{ "home.title" | getTranslate}}
我需要从数组中获取值,比如说
arr[home.title]
,但这不起作用,我需要这个
arr[home][title]

编辑:

我将值从HTML转换为我想要的格式

let b = value.split(".");
let keyTranslate = "[" + b[0] + "]" + "" + "[" + b[1] + "]";
console.log(keyTranslate)    // [home][title]
现在我把这个值传递给另一个函数

this.store.select(fromStore.TranslateSelector.translateKey(keyTranslate ));
这里我想用这个键来计算值

export const translateKey = (key: any) => createSelector(
    getTranslate, 
    translate => console.log(translate[key]));  // this not working. 

如何设置“键”来转换数组?

我发现如果其他人坚持这样做,使用ECMAscript 6很容易

key.split(".").reduce((o, i) => o[i], translate)); --> // translate.home.title
下面是完整的解释
arr
当前不是数组,它是一个具有属性的对象,该属性也是一个对象
arr[x][y]
仅用于二维阵列。但是您可以使用键作为字符串访问属性,如
arr[“home”][“title”]
。不确定这是否是你要找的。我编辑了我的问题,请看一下,看起来你可能想看看transloco:)