Как понять подпись машинописного индекса?

если у меня есть такой тип

{[index: string]: number}

это означает, что ключи для моего объекта могут быть строками, а значением будет число.

Я хотел знать, имеет ли это слово index какое-либо значение, например, есть ли разница между следующими двумя типами

{[index: string]: number}

и

{[key: string]: number}

Было бы здорово, если бы какая-то ссылка могла быть предоставлена ​​​​из документов.


person ashish singh    schedule 03.05.2019    source источник


Ответы (1)


Нет, index — это просто имя, которое назначается для обозначения индекса. Практически оба типа одинаковы.

person ScriptKraft    schedule 03.05.2019
comment
Большое спасибо, можете ли вы дать какую-либо ссылку на это? - person ashish singh; 03.05.2019
comment
вы можете найти это полезным basarat.gitbooks.io/typescript/docs/types /index-signatures.html - person ScriptKraft; 03.05.2019
comment
текст слева от : является идентификатором. Тот, что справа, определяет тип. - person ScriptKraft; 03.05.2019
comment
я не понимаю смысл этого идентификатора, когда сам идентификатор может быть чем угодно. - person ashish singh; 03.05.2019
comment
У вас должно быть что-то слева, иначе это будет синтаксически неправильно. Например, {[: string]: number} будет несовместимо с синтаксисом Typescript. - person ScriptKraft; 03.05.2019
comment
Просто хочу добавить: идентификатор действительно отображается в сообщениях об ошибках при запуске tsc, поэтому он может иметь какое-то применение для предоставления контекста или намерения. Но это не отображается во всплывающих подсказках ошибок vscode или выводе Peek Problem, FWIW. - person Matthias; 03.05.2019