Accessing string dictionary properties: names["firstName"]: Alice names["100"]: John After adding age property: names["age"] = 30 In TypeScript, type checking would prevent incorrect assignments: // names["age"] = 30; // Error: Type 'number' is not assignable to type 'string' Accessing number dictionary properties: scores[0]: Zero scores[1]: 100 scores[2]: true After adding complex object: scores[3]: { passed: true } Note about JavaScript objects: In JavaScript, all object keys are converted to strings: typeof Object.keys(scores)[0]: string Array indices: arr[0]: a typeof arr.keys().next().value: number This distinction matters in TypeScript's type system