Skip to content

js/typescript

To dynamically allocate key/value to an object

interface AnObject {
    [key: string]: any
}
interface AnObjectRec extends Record<string, any> {}

let o: AnObject = {}
o.test = "ok"

Differences between Map and Record

Map: key can be any type, perf > Object. Has set/get/has/delete methods.
Record: TS compiles it as Object

Parameters: default and optional

function fn(n: number = 1) {...}    // n is default param
function fn(n?: number){...}        // n is optional param
Default parameters are optional... by default ;-)