簡體   English   中英

在TypeScript可索引接口中訪問索引

[英]Accessing index in a TypeScript indexible interface

我已經使用索引類型在打字稿中創建了“字典”,並嘗試將其用作for in語句中的數組。 我可以毫無問題地獲取值,但無法弄清楚如何訪問索引(請參閱for循環中的??)。

export interface Settings {
    dictionary : IDictionary[];
}

export interface IDictionary{
    [index: number]: string;
}

// To be used like this
for (var setting in Settings.dictionary)
{
  console.log(“Setting is: “ + setting + “ for id: “ + ??);
}

實際上,設置是ID。 您需要使用[id]進行索引的值

了解更多有關for / in的信息: https : //developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/for...in

這是您的代碼的完整工作示例...基本上所有接口都是正確的,您只需要按照???指示在循環中調整該位即可。

關鍵是setting

要獲取該值,請使用settings.dictionary[setting]

這是完整的代碼:

export interface Settings {
    dictionary : IDictionary[];
}

export interface IDictionary{
    [index: number]: string;
}

function logSettings(settings: Settings) {
    for (var setting in settings.dictionary) {
        console.log('Setting is: ' + settings.dictionary[setting] + 
            ' for id: ' + setting);
    }
}

var settings: Settings = {
    dictionary: []
};

settings.dictionary[0] = 'A';
settings.dictionary[1] = 'B';

logSettings(settings);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM