π€ Chapter 5: λ°°μ΄κ³Ό νν
π¦ λ°°μ΄ μ΄ν΄νκΈ°β
- μλ°μ€ν¬λ¦½νΈμμ λ°°μ΄μ
Array
ν΄λμ€μ μΈμ€ν΄μ€μ΄λ€.
let array = new Array;
array.push(1);
array.push(2);
array.push(3);
console.log(array); // [1, 2, 3]
- λ°°μ΄μ λ΄κΈ΄ κ°κ° κ°μ μμ΄ν λλ μμλΌκ³ νλ€.
π []
λ¨μΆ ꡬ문β
- μλ°μ€ν¬λ¦½νΈμμλ
[]
λΌλ λ¨μΆ ꡬ문μ μ 곡νλ€.
let numbers = [1, 2, 3];
let strings = ['Hello', 'World'];
console.log(numbers, strings); // [1, 2, 3] ['Hello', 'World']
π μλ°μ€ν¬λ¦½νΈμμ λ°°μ΄μ κ°μ²΄λ€β
- μλ°μ€ν¬λ¦½νΈμμ λ°°μ΄μ κ°μ²΄μ΄λ€.
- λ°°μ΄μ
Array
ν΄λμ€μ μΈμ€ν΄μ€μΈλ°, ν΄λμ€μ μΈμ€ν΄μ€λ κ°μ²΄μ΄κΈ° λλ¬Έμ΄λ€. Array.isArray
λ 맀κ°λ³μλ‘ μ λ¬λ°μ μ¬λ²μ΄ λ°°μ΄μΈμ§ κ°μ²΄μΈμ§ μλ €μ€λ€.
let a = [1, 2, 3];
let o = { name: 'Jack', age: 32 };
console.log(Array.isArray(a), Array.isArray(o)); // true false
π λ°°μ΄μ νμ β
- νμ
μ€ν¬λ¦½νΈμμ λ°°μ΄μ νμ
μ
μμ΄ν νμ []
μ΄λ€. μλ₯Ό λ€μ΄, λ°°μ΄μ μμ΄ν μ΄number
νμ μ΄λ©΄ λ°°μ΄μ νμ μnumber[]
μ΄κ³ , μμ΄ν μ΄string
νμ μ΄λ©΄string[]
μ΄λ€.
let numArray: number[] = [1, 2, 3];
let strArray: string[] = ['Hello', 'World'];
type IPerson = { name: string, age?: number };
let personArray: IPerson[] = [
{ name: 'Jack' },
{ name: 'Jane', age: 32 },
];
// [ { name: 'Jack' }, { name: 'Jane', age: 32 } ]
π λ¬Έμμ΄κ³Ό λ°°μ΄ κ° λ³νβ
- νμ μ€ν¬λ¦½νΈμμλ λ¬Έμ νμ μ΄ μκ³ λ¬Έμμ΄μ λ΄μ© λν λ³κ²½ν μ μλ€. μ΄λ¬ν νΉμ§ λλ¬Έμ λ¬Έμμ΄μ κ°κ³΅νλ €λ©΄ λ¨Όμ λ¬Έμμ΄μ λ°°μ΄λ‘ μ νν΄μΌ νλ€.
- λ³΄ν΅ λ¬Έμμ΄μ λ°°μ΄λ‘ μ νν λλ
String
ν΄λμ€μsplit
λ©μλλ₯Ό μ¬μ©νλ€.
const split = (str: string, delim: string = ''): string[] => str.split(delim);
console.log(
split('hello'), // [ 'h', 'e', 'l', 'l', 'o' ]
split('h_e_l_l_o', '_'), // [ 'h', 'e', 'l', 'l', 'o' ]
);
string[]
νμ μ λ°°μ΄μ λ€μstring
νμ μΌλ‘ λ³ννλ €λ©΄Array
ν΄λμ€μjoin
λ©μλλ₯Ό μ¬μ©νλ€.- λ€μμ
join
λ©μλλ₯Ό μ΄μ©νλ μ¬μ©μ μ μ ν¨μjoin
μ μμ±ν μμ΄λ€.
const join = (strArray: string[], delim: string=''): string =>
strArray.join(delim);
console.log(
join(['h', 'e', 'l', 'l', 'o']), // hello
join(['h', 'e', 'l', 'l', 'o'], '_'), // h_e_l_l_o
);
π μΈλ±μ€ μ°μ°μβ
- λ°°μ΄μ΄ λ΄κ³ μλ μμ΄ν
μ€ νΉμ μμΉμ μλ μμ΄ν
μ μ»κ³ μ ν λλ μΈλ±μ€
μ°μ°μ[μΈλ±μ€]
λ₯Ό μ¬μ©νλ€.
const numbers: number[] = [1, 2, 3, 4, 5];
for(let index = 0; index < numbers.length; index++) {
const item: number = numbers[index];
console.log(item); // 1 2 3 4 5
}
π λ°°μ΄μ λΉκ΅¬μ‘°ν ν λΉβ
- λ°°μ΄μ λΉκ΅¬μ‘°ν ν λΉλ¬Έμμλ κ°μ²΄μ λ¬λ¦¬
[]
κΈ°νΈλ₯Ό μ¬μ©νλ€.
let array: number[] = [1, 2, 3, 4, 5];
let [first, second, third, ...rest] = array;
console.log(first, second, third, rest); // 1 2 3 [4, 5]
π for...in λ¬Έβ
for...in
λ¬Έμ κ°μ²΄λ₯Ό λμμΌλ‘ μ¬μ©νμ§λ§ λ°°μ΄λ κ°μ²΄μ΄λ―λ‘ λ°°μ΄μμ μ¬μ©ν μ μλ€.
let names = ['Jack', 'Jane', 'Steve'];
for (let index in names) {
const name = names[index];
console.log(`[${index}]: ${name}`); // [0]: Jack [1]: Jane [2]: Steve
}
- λ§μ½
for...in
λ¬Έμ κ°μ²΄λ₯Ό μ¬μ©ν λλ κ°μ²΄κ° κ°μ§ μμ±μ λμμΌλ‘ μννλ€.
let jack = { name: 'Jack', age: 32 };
for(let property in jack) {
console.log(`${property}: ${jack[property]}`); // name: 'Jack' age: 32
}