Tuple

νƒ€μž…μŠ€ν¬λ¦½νŠΈμ˜ νŠœν”Œμ˜ μ •μ˜λŠ”

A tuple is a typed array with a pre-defined length and types for each index.

라고 μ“°μ—¬μžˆλŠ”λ°,ν•΄μ„ν•˜λ©΄ 길이와 각 인덱슀의 νƒ€μž…μ΄ μ •ν•΄μ§„ 배열이닀. λ°°μ—΄μ˜ ν™•μž₯된 ν˜•νƒœλ‘œμ¨ λ°μ΄ν„°μ˜ ꡬ쑰λ₯Ό λͺ…ν™•ν•˜κ²Œ μ •μ˜ν•˜κ³ μž ν• λ•Œ μ‚¬μš©λœλ‹€.

const sampleVariable: [string, number, boolean] = ["test", 1, true];

길이, 각 인덱슀 μ›μ†Œμ˜ νƒ€μž…κ³Ό μˆœμ„œκ°€ μ •ν•΄μ Έ 있기 λ•Œλ¬Έμ— κ΅¬μ‘°ν™”λœ λ°μ΄ν„°μ˜ ν‘œν˜„μ— μ ν•©ν•˜λ‹€. 예λ₯Ό λ“€μ–΄

type TUser = [string, string, number];

const sampleUser1: TUser = ["aug", "2005/09/22", 20];
const sampleUser2: TUser = ["aug2", "2004/09/22", 21];

μ˜ˆμ‹œμ™€ 같이 μœ μ €μ˜ 정보λ₯Ό λ‹΄μ•„μ•Ό ν•˜λŠ” λ³€μˆ˜λΌλ©΄ κ΅¬μ‘°ν™”λœ νŠœν”Œμ„ μ‚¬μš©ν•˜λŠ”κ²ƒμ΄ 가독성, μœ μ§€λ³΄μˆ˜ μΈ‘λ©΄μ—μ„œ 이점을 κ°€μ Έμ˜¬ 수 μžˆλ‹€.

ν•˜μ§€λ§Œ push λ©”μ„œλ“œλ₯Ό μ‚¬μš©ν•˜κ²Œ 되면 길이가 μ •ν•΄μ ΈμžˆλŠ” νŠœν”Œμ΄λΌκ³  해도 μ›μ†Œκ°€ μΆ”κ°€λ˜μ–΄ 길이가 λŠ˜μ–΄λ‚˜ 버린닀.

sampleUser1.push("is possible?");
console.log(sampleUser1); // [ 'aug', '2005/09/22', 20, 'is possible?' ]

λ¬Όλ‘  μˆœμ„œλŠ” λ°”λ€Œμ§€ μ•Šκ³  κ°€μž₯ λ§ˆμ§€λ§‰μ— μΆ”κ°€λ˜κΈ΄ ν•˜μ§€λ§Œ 길이가 λ³€κ²½λœλ‹€λ©΄ μš°λ¦¬κ°€ νŠœν”Œμ„ μ‚¬μš©ν•˜λŠ” λͺ©μ μ— λ²—μ–΄λ‚˜κ²Œ λœλ‹€. κ·Έλž˜μ„œ λ§Œμ•½ νŠœν”Œμ˜ ν˜•νƒœλ₯Ό μœ μ§€ν•˜κ³ μž ν•œλ‹€λ©΄ readonly ν‚€μ›Œλ“œλ₯Ό μ‚¬μš©ν•˜λ©΄ λœλ‹€.

type TUser = readonly [string, string, number];

const sampleUser1: TUser = ["aug", "2005/09/22", 20];
const sampleUser2: TUser = ["aug2", "2004/09/22", 21];

sampleUser1.push("2");

Last updated