如何使用字符串索引访问 TypeScript 中的对象值

我有一个对象,我想使用字符串索引访问对象值,但是当我尝试在 TypeScript 中执行此操作时,我遇到了错误。


// Declared Globally

const Orientation = {

    value: () => 0,

    'next_value': () => someFunction.anotherFunction.sqrt(),

};


// _textValue type declared 

_textValue : string;


// Declared inside constructor

this._textValue = 'next_value';


// value used inside a function

_getValue(){

    const newValue = Orientation[this._textValue]();

 }

在我使用的地方Orientation[this._textValue]();,我得到的错误是:


元素隐式具有“any”类型,因为“any”类型的表达式不能用于索引类型“{ value: () => number; 'next_value': () => 数字;}'.ts(7053)


关于如何解决这个问题的任何想法?


慕桂英546537
浏览 156回答 1
1回答

慕森卡

main.tsexport {}interface IDictionary {    [index: string]: string;}var params = {} as IDictionary;//array with string index params = {a: "Bhavesh",b: "Bond", c: "Urmil"};//get array data using string indexvar getData = params['b']; // output: Bondvar getData = params['B']; // output: undefinedconsole.log(getData);我认为您的问题将在上面的示例代码中得到解决。谢谢你..!
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript