const product { id: string; price: number; tags: string[]; details: { title: string; description: string; } } = { id: 'abc1', price: 12.99, tags: ['great-offer', 'hot-and-new'], details: { title: 'Red Carpet', description: 'A great carpet - almost brand-new!' } }
Object
κ°μ²΄ νμ
const user: { name: string; height: number; } = { name: 'μν¬μ’ ', height: 176 };
μ΄ λ κ°μ²΄ νμ
μ μλ μ€λΈμ νΈ λ¦¬ν°λ΄κ³Ό λ€μκ³Ό κ°μ μ°¨μ΄μ μ κ°λλ€.
- μ½λ‘ (
:
)μ μ°λ³μλ κ° λμ ν΄λΉ μμ±μ νμ μ΄ λ€μ΄κ°λ€.
- ꡬλΆμλ‘ μ½€λ§(
,
) λΏλ§ μλλΌ μΈλ―Έμ½λ‘ (;
)μ μ¬μ©ν μ μλ€.
μ ν μμ±
const userWithUnknownHeight: { name: string; height?: number; } = { name: 'κΉμν무' };
μ½κΈ°μ μ© μμ±
μμ±λͺ
μμ readonly ν€μλλ₯Ό λΆμ¬ ν΄λΉ μμ±μ μ¬ν λΉμ λ§μ μ μλ€. readonly ν€μλκ° λΆμ μμ±μ const ν€μλλ₯Ό μ΄μ©ν λ³μμ μ μμ λΉμ·νκ² λμνλ€.
const user: { readonly name: string; height: numer; } = { name: 'μν¬μ’ ', height: 176 }; user.name = 'μ’ ν¬μ'; // error TS2540: Cannot assign to 'name' because it is a constant or a read-only property.
Array 1
let arr: number[] = [1, 2, 3];
Array 2
let arr: Array<number> = [1, 2, 3];