λ°°μ΄μ μμκ° μλ 컬λ μ
μ μ μ₯νλ μλ£κ΅¬μ‘°μ΄λ€.
λ°°μ΄ μμμ μΈλ±μ€λ 0λΆν° μμνλ€.
λ°°μ΄μ νΈμΆνλ©΄ μμλ₯Ό ,(μ½€λ§)λ‘ κ΅¬λΆν λ¬Έμμ΄μ΄ λ°νλλ€.
λ°°μ΄μ μμλ‘λ λ¬Έμμ΄, μ«μμ΄, λΆλ¦¬μΈνμ , ν¨μ, μ¬μ§μ΄ κ°μ²΄μ λ°°μ΄λ λ€μ΄κ° μ μλ€.
let arr = ['string', 1234, true, function(){ console.log('Dev. planethoon'),
{ name: 'Sunghoon', }, ['1', '2', '3',],
];
console.log(arr[0]); // 'string';
console.log(arr[1]); // 1234;
console.log(arr[2]); // true;
arr[3](); // 'Dev. planethoon'
console.log(arr[4]['name']); // 'Sunghoon'
console.log(arr[5][1]); // '2', λ°°μ΄μ μμλ‘ κ°μ§κ³ μλ λ°°μ΄μ λ€μ°¨μλ°°μ΄μ΄λΌκ³ νλ€.
// λΉ λ°°μ΄ μ μΈ
let arr = new Array();
let arr = [];
// μμλ κ°μ΄ μ μΈ
let arr = new Array('1', '2', '3',);
let arr = ['1', '2', '3',];
let coffee = [`starbucks`, `idiya`, `cafebene`,];
console.log(coffee[0]) // 'starbucks'
coffee[2] = 'blue bottle'; // μ΄λ°μμΌλ‘ μμλ₯Ό λ³κ²½ ν μλ μμ.
console.log(coffee[3]) // undefined; κ°μ΄ μμΌλκΉ undefined 리ν΄.
coffee[3] = 'angelinus'; // ν λΉ μ°μ°μλ‘ μμ μΆκ°λ κ°λ₯
coffee[5] = 'tom&toms'; // μΈλ±μ€ λ°μ΄λμ΄ μΆκ°λ κ°λ₯νλ€.
console.log(coffee); // ['starbucks', 'idiya', 'blue bottle', 'angelinus', empty, 'tom&toms']
// μ΄ κ²½μ° coffee[4]λ emptyλ‘ νκΈ°λμ§λ§ νΈμΆνλ©΄ undefinedκ° λ°νλλ€.
length
νλ‘νΌν°λ₯Ό μ¬μ©κ°λ₯νλ©° ν΄λΉ νλ‘νΌν°λ₯Ό μ΄μ©νλ©΄ λ°°μ΄μ΄ κ°μ§ μμμ μλ₯Ό μ μ μλ€.let arr = ['1', '2', '3',];
console.log(arr.length) // 3;
arr[4] = '5';
console.log(arr) // ['1', '2', '3', empty, '5']
console.log(arr.length ) // 5; λΉ μμκ° μμ΄λ ν΄λΉ μμκΉμ§ μΉ΄μ΄νΈνλ€.
length
λ λ°°μ΄μ μμ μλ₯Ό λ°ννλ νλ‘νΌν°μ΄μ§λ§ λ°°μ΄ μ체μ μμμ μν₯μ μ€ μ μλ€.let arr = ['1', '2', '3', '4', '5',];
arr.length = 3;
console.log(arr) // ['1', '2', '3',] μμ 3κ°λ§ λ¨κ³ λλ¨Έμ§λ μμ λ κ²μ λ³Ό μ μλ€.
arr.length = 5; // lengthλ₯Ό λ€μ 5λ‘ λ리λλΌλ,
console.log(arr) // ['1', '2', '3', empty x 2] λΉ μμλ§ μκΈΈ λΏ μμλ 볡ꡬλμ§ μλλ€.
λ°°μ΄μ ν΅ν΄ λ§λ€ μ μλ λνμ μλ£κ΅¬μ‘° μ€ νλλ‘ μ μ μ μΆμ μλ£κ΅¬μ‘°(FIFO - First In First Out)λΌκ³ λ λΆλ¦°λ€.
μ΄λ λ°°μ΄μ push
μ shift
λΌλ λ΄μ₯ λ©μλκ° μ‘΄μ¬νκΈ°μ κ°λ₯νλ€.
push
λ λ°°μ΄μ κ°μ₯ λμ μμλ₯Ό μΆκ°νκ³ μΆκ°νκ³ λ λ€μμ length κ°μ λ°ννλ€.
νλ²μ 볡μμ μμλ₯Ό μΆκ°ν μ μλ€.
let arr = ['1', '2', '3', '4', '5',];
arr.push('6', '7'); // 7;
console.log(arr); // ['1', '2', '3', '4', '5', '6', '7']
shift
λ μ μΌ μ, μ¦ μΈλ±μ€κ° 0μΈ μμλ₯Ό λ°ννκ³ μ κ±°ν ν λ€λ₯Έ μμλ€μ μΈλ±μ€λ₯Ό νλμ© μμΌλ‘ λΉκΈ΄λ€.
let arr = ['1', '2', '3', '4', '5',];
console.log(arr.shift()) // '1'
console.log(arr) // ['2', '3', '4', '5']
+
unshift
λ λ΄μ₯ λ©μλλ‘ μ μλμ΄ μλλ°, μ΄λ μ μΌ μμ μμλ₯Ό μΆκ°νκ³ λλ¨Έμ§ μμλ€μ νλμ© λ€λ‘ λ―Όλ€.
κ·Έλ¦¬κ³ μΆκ°νκ³ λ λ€μμ length
κ°μ λ°ννλ€.
νλ²μ 볡μμ μμλ₯Ό μΆκ°ν μ μλ€.
let arr = ['1', '2', '3', '4', '5',];
arr.unshift('-1', '0'); // 7; νλ²μ 볡μμ μμλ₯Ό μΆκ°ν μ μλ€.
console.log(arr) // ['0', '1', '2', '3', '4', '5']
μ€νν μλ£κ΅¬μ‘° μμ λ°°μ΄μ λνμ μλ£κ΅¬μ‘°μ€ νλλ‘ νμ
μ μΆμ μλ£κ΅¬μ‘°(LIFO - Last In First Out)λ‘λ λΆλ¦°λ€.
μ€νν μλ£κ΅¬μ‘°μμ μ¬μ©λλ λκ°μ§ λ΄μ₯ λ©μλλpop
κ³Ό ννμμλ μ¬μ©νλ push
μ΄λ€.
pop
μ μ μΌ λμ μμλ₯Ό μ κ±°νκ³ λ°ννλ λ©μλμ΄λ€. (shift
μ λ°λ)
let arr = ['1', '2', '3', '4', '5',];
arr.pop(); // '5'
console.log(arr) // ['1', '2', '3', '4']
μ€ννμ μλ£κ΅¬μ‘°κ° ννμ μλ£κ΅¬μ‘°λ³΄λ€ μ°μ°μ΄ λΉ λ₯Έλ° μ΄λ νν μλ£κ΅¬μ‘°μμ λ°μ΄ν°λ₯Ό μΆμΆν λ μ¬μ©νλ shift
λ©μλμ μ°μ°κ³Όμ λλ¬Έμ΄λ€.
shift
λ©μλλ 0λ² μμ μ κ±° -> λ°°μ΄ λ΄λΆμμ μΈλ±μ€ νλμ© λΉκΉ -> length νλ‘νΌν° κ°±μ μ μμλ‘ μ΄λ£¨μ΄ μ§κΈ°μ μμμ μκ° λ§μΌλ©΄ λ§μμλ‘ μ°μ° μλκ° λλ €μ§λ€.
μ‘°κΈ TMIμ§λ§, μ€ννκ³Ό ννμ μλ£κ΅¬μ‘°μ²λΌ λ°°μ΄μ μ²μμ΄λ λμ μμλ₯Ό λνκ±°λ λΉΌλ μ°μ°μ μ 곡νλ μλ£κ΅¬μ‘°λ₯Ό μ»΄ν¨ν° κ³Όν λΆμΌμμ λ°ν(deque, Double Ended Queue)λΌκ³ λΆλ₯Έλ€.
λ°°μ΄μμ λ°λ³΅λ¬Έμ μ¬μ©νλ λ°©λ²μ μ΄ μΈκ°μ§, for
, for..of
κ·Έλ¦¬κ³ for..in
μ΄ μλ€.
for
λ¬Έμ μΈλ±μ€λ₯Ό μ¬μ©νμ¬ λ°°μ΄μ μνν λ μ°λ κ°μ₯ ν΄λμν λ°©λ²μ΄λ€.
let coffee = ['starbucks', 'idiya', 'blue bottle'];
for(i = 0; i < coffee.length; i++){
console.log(coffee[i]); // starbucks, idiya, blue bottle
}
for..of
λ λ°°μ΄μ μΈλ±μ€λ μ»μ μ μκ³ κ°λ§ μ»μ μ μλ€.
let coffee = ['starbucks', 'idiya', 'blue bottle'];
for(let coffeeName of coffee){
console.log(coffeeName); // starbucks, idiya, blue bottle
}
coffeeName
μ μ리λ for..of
μμμ μ¬μ©ν λ³μ μ리μ΄κ³ coffee
μ리λ λ°°μ΄μ΄ λ€μ΄μ¬ μ리μ΄λ€.
λ°°μ΄μ μμλ₯Ό νλ²μ© λ°ννλ©° κ΅¬λ¬Έμ΄ μ§§μκ² μ₯μ μ΄λ€.
μΌλ¨ λ°°μ΄λ κ°μ²΄μ΄κΈ°μ for..in
λ μ¬μ©κ°λ₯νλ€.
let coffee = ['starbucks', 'idiya', 'blue bottle'];
for(let key in coffee){
console.log(coffee[key]); // starbucks, idiya, blue bottle
}
νμ§λ§ for..in
κ°μ²΄μ μ΅μ ν λμ΄ μκΈ°μ
1. μ€λ₯μ κ°λ₯μ±μ΄ λκ³
2. μ°μ° μλκ° λ리기μ
-> for..of
μ¬μ©μ κΆμ₯νλ€.
λ°°μ΄μ λ§λ³΄λ©΄μ μ€λλ μ§μμ΄ λμλ€.
νμ
ν λ κΉ μ¬μ©νλ λ²μ μ΅νλ€.
λ°°μ΄μ 곡λΆνκΈ΄ νμ§λ©΄ μμ§ λΆμ‘±νλ€.
κΉ κ³΅λΆμ λ°°μ΄ κ³΅λΆλ§κ³ νκ² μλ€.
μ€λμ κΉμ μ΅νλ μκ°μ΄μκ³ , κ°μΈ 곡λΆμκ°μ λ°°μ΄μ 곡λΆνλ€.
νμ
ν λ κΉμ μ΄λ»κ² μ¬μ©νλμ§ μ΅νλ μκ°μ κ°μ‘λλ° νμν μκ°μ΄μλ€κ³ μκ°νλ€.
κ·Έλ¦¬κ³ νμ΄λμ΄ μμΌλ‘ μ§νλ μ½μ€μ λν΄μ μ΄μΌκΈ°λ₯Ό κ°λ΅νκ² μλ €μ£Όμ
¨λλ° μΈλ©΄νκ³ μλ λ―Έλκ° λ μμ μ±νΌ λ€κ°μ¨ λλμ΄μλ€.
μ΄λ² μ£Όλ μ무λλ λ무 λλν΄μ μΊλ¦°λλ₯Ό μΈλ©΄ν μ±λ‘ λ§μμ λ°λμ΄ λ€μ΄λ²λ € μ€λ μ€λ ν΄λ²λ Έλλ°,
μμΌμ€λ κΉ¨λ¬μμ§λ§ μ무λλ μκΈ°κ° λ€κ°μ¨ κ² κ°λ€.
λ€νν μμ§ λ°°μ°λ κ²λ μ¬λ°κ³ , λ°°μ΄κ±Έ ν¬μ€ν
νλ©° μ 리νλ κ²μλ μ¬λ―Έκ° λ€μ΄μ μμ¦ κΈ°λΆμ μ’λ€.
ν¬μ€ν νλ μ€λ κΉ νμ΄μκ°μ μκ°μ΄ μ‘°κΈ λ¨μ νμ΄λμ΄λ μ΄λ° μ λ° μ΄μΌκΈ°λ₯Ό λλλ€κ° λΈλ‘κ·Έ μ΄μΌκΈ°κ° λμμ 보μ¬λλ Έλλ° λ©μ§λ€λ©΄μ μ’μ νκ°λ₯Ό ν΄μ£Όμ ¨λ€.
μ¬μ€ λꡬνν
보μ¬μ£Όλ €λ λͺ©μ λ³΄λ¨ λ΄κ° λμ€μ λ³΄λ €λκ² λͺ©μ μΌλ‘ ν¬μ€ν
νκ³ μμ§λ§,
볡μ΅νλ μκ°μ΄λΌκ³ μκ°νλ©° λλ¦ μκ°μ μ λ² ν¬μν΄μ ν¬μ€ν
νκ³ μλλ° μ’μ νκ°λ₯Ό ν΄μ£Όμλ λκ° λ³΄λμ΄ λκ»΄μ Έ μ’μλ€.
μ λ§ μ μ νλ λͺ¨λ μλ°μ€ν¬λ¦½νΈ - https://ko.javascript.info/