[Typescript] “Record” Mapped Type

"Record" repersent key-value pair.

type MyRecord<K extend string, T> = {
   [P in K]: T       
}

Record key should be string.

array[0]

in javascript, even we give array 0 as key, it still convert to string "0"

array[0] 
array["0"]

they are the same.

let dictionary: Record<string, TrackStates> = {}

interface TrackStates {
    current: string;
    next: string;
}

const item: Record<keyof TrackStates, string> = {
    current: 'abc',
    next: ''def
}

dictionary[0] = item
原文地址:https://www.cnblogs.com/Answer1215/p/13758773.html