# μμ½
- λ¨μν 무μΈκ°λ₯Ό λ°λ³΅νλ©΄μ μμ μ μνν λ β‘ forEach (μλ³Έ λ°°μ΄ λ³κ²½λμ§ μμ / μλ‘μ΄ λ°°μ΄ λ°ννμ§ μμ)
- μλ³Έ λ°°μ΄μ λ³κ²½νμ§ μκ³ λ³νλ λ°μ΄ν°λ₯Ό λ°λ‘ μ¬μ©ν νμκ° μμ λ β‘ map (μλ³Έ λ°°μ΄ λ³κ²½λμ§ μμ / μλ‘μ΄ λ°°μ΄ λ°ν)
β forEach
- λ°°μ΄μ κ° μμμ λν΄ νΉμ μμ μ μνν λ μ¬μ©νλ€.
const numbers = [1, 2, 3];
numbers.forEach(num => {
console.log(num * 2); // 2, 4, 6 μΆλ ₯
});
console.log(numbers); // [1, 2, 3] μλ³Έ λ°°μ΄μ κ·Έλλ‘!
- forEachλ λ°°μ΄μ μμλ€μ μννλ©΄μ κ° μμλ₯Ό 2λ°°λ‘ κ³μ°ν΄μ μΆλ ₯νμ§λ§, μλ‘μ΄ λ°°μ΄μ λ°ννμ§ μλλ€.
(μλ³Έ λ°°μ΄μ λ³κ²½λμ§ μμ) - μλ³Έ λ°°μ΄μ μ μ§νλ©΄μ, λ¨μν λ°λ³΅ μμ μ μνν λ μ¬μ©(λ°μ΄ν°λ₯Ό νλ©΄μ μΆλ ₯νκ±°λ, λ‘κ·Έ μ°μ κ²½μ° μ¬μ©λ¨)
β map
- λ°°μ΄μ κ° μμμ λν΄ μμ μ μννκ³ , κ·Έ κ²°κ³Όλ₯Ό μλ‘μ΄ λ°°μ΄λ‘ λ°νν λ μ¬μ©νλ€.
const numbers = [1, 2, 3];
const doubled = numbers.map(num => num * 2);
console.log(doubled); // [2, 4, 6] λ³νλ λ°μ΄ν°λ₯Ό μ λ°°μ΄λ‘ λ°ν
console.log(numbers); // [1, 2, 3] μλ³Έ λ°°μ΄μ κ·Έλλ‘ μ μ§!
- mapμ λ°°μ΄μ μννλ©° κ° μμλ₯Ό 2λ°°λ‘ λ§λ€μ΄ μλ‘μ΄ λ°°μ΄μ λ°ννλ€.
- μλ³Έ λ°°μ΄μ κ·Έλλ‘ λκ³ μλ‘μ΄ λ°°μ΄μ μμ±νλ€.
β‘ μλ³Έ λ°°μ΄μ λ³κ²½νμ§ μμμΌλ‘ λ°μ΄ν° μμ€ λ§μ μ μκ³ , λ³νλ λ°μ΄ν°λ₯Ό μ¬μ¬μ©νκ±°λ μ΄λκ° μ μ₯ν λ μ μ©νλ€.
(ex: κ°κ²© λ°μ΄ν°λ₯Ό λ³νν΄μ ν μΈκ°λ₯Ό κ³μ°ν ν, μ΄λ₯Ό μλ‘μ΄ λ°°μ΄λ‘ μ μ₯ κ°λ₯)
π₯ mapμ μ¬μ©ν΄μΌ ν μν©μμ forEachλ₯Ό μ¬μ©νλ κ²½μ° λ°μνλ λ¬Έμ
1. λ³νλ λ°μ΄ν°λ₯Ό μ»μ μ μλ€.
forEachλ λ¨μν λ°°μ΄μ κ° μμλ₯Ό μννλ©΄μ μμ μ μνν λΏμ΄λ―λ‘, λ³νλ λ°μ΄ν°λ₯Ό μ μ₯νκ±°λ μ¬μ¬μ©ν μ μλ€.
const numbers = [1, 2, 3];
const doubled = numbers.forEach(num => num * 2);
console.log(doubled); // undefined
forEachλ₯Ό μ¬μ©νλ©΄ μλ‘μ΄ λ°°μ΄μ λ°ννμ§ μκΈ° λλ¬Έμ doubled λ³μλ undefinedκ° λλ€.
λ³νλ λ°μ΄ν°λ₯Ό λ°°μ΄λ‘ μ»μΌλ €λ μν©μμ forEachλ₯Ό μ¬μ©νλ©΄, λ°μ΄ν°λ₯Ό λ°λ‘ μ μ₯ν μ μλ€.
const numbers = [1, 2, 3];
numbers.forEach(num => {
num = num * 2; // μμ
μ μνλμ§λ§
});
console.log(numbers); // [1, 2, 3] μλ³Έ λ°°μ΄μ μ¬μ ν κ·Έλλ‘
λ³νλ λ°μ΄ν°λ₯Ό μ μ₯ν μ μμΌλ μ¬μ¬μ©λ λΉμ° λΆκ°..
2. μ½λκ° λ³΅μ‘ν΄μ§κ³ κ°λ μ±μ΄ λ¨μ΄μ§λ€.
mapμ "λ³νλ λ°°μ΄μ λ°ν"νλ λͺ νν λͺ©μ μ κ°μ§κ³ μ¬μ©λλ€. λ°λ©΄, forEachλ μ£Όλ‘ "λ°°μ΄μ μννλ©΄μ μμ μ μν"ν λ μ¬μ©λλ€. μ΄λ° μ°¨μ΄λ₯Ό 무μνκ³ forEachλ₯Ό λ³ν μμ μ μ¬μ©νλ©΄, μ½λμ μλκ° λΆλΆλͺ ν΄μ§κ³ , μ΄λ κ²°κ΅ μ½λμ κ°λ μ±μ λ¨μ΄λ¨λ¦¬κ² λλ€.
const numbers = [1, 2, 3];
let doubled = [];
numbers.forEach(num => {
doubled.push(num * 2);
});
forEachλ‘ μλ‘μ΄ λ°°μ΄μ λ§λ€κΈ° μν΄μλ μ§μ λ°°μ΄μ μμ±νκ³ κ°κ°μ μμλ₯Ό λ°°μ΄μ λ£λ μμ μ ν΄μΌ νλ€. μ½λλ 볡μ‘ν΄μ§κ³ κ°λ μ±μ λ¨μ΄μ§κΈ° λλ¬Έμ μ΄ κ²½μ° mapμ μ¬μ©νλ κ²μ΄ λ μ§κ΄μ μ΄κ³ μλκ° λͺ ννλ€.
'π©βπ» hello, world! > JavaScript' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
DOM λ€λ£¨κΈ° : todolist layout λ°λ³΅λλ μ½λ 리ν©ν λ§ (0) | 2024.09.23 |
---|---|
[JS] DOM λ€λ£¨κΈ° :: textContent, innerText, innerHTML, appendChild, insertAdjacentHTML (2) | 2024.09.12 |