
์ค๋์ ๋ฐฐ์ดํจ์๋ฅผ ๊ณต๋ถํด ๋ณผ ๊ฒ์ด๋ค.
๋ฐฐ์ด์ ๋ํ ํจ์๊ฐ ์ฌ๋ฌ๊ฐ ์๋ค ๊ทธ ์ค์ ์ค๋ ๋ค๋ค๋ณผ ๊ฒ์ forEach(), map(), filte(), some(), every(), find(), findIndex() ์ด๋ค.
๊ธฐ์กด์ for๋ฌธ์ ๋์ฒดํด์ ์ธ ์ ์๋ค. for๋ฌธ์ ์จ๋๋์ง๋ง for๋ฌธ๋ณด๋ค forEach๋ฅผ ์ฐ๋ฉด ๋ ๊ฐ๋จํ๊ฒ ์ธ ์ ์๋ค.
์๋ฅผ ๋ค์ด name์ด๋ผ๋ ๋ฐฐ์ด์ด ์๋ค.
let names = ["Leo",
"Lio",
"Lee",
"Luna"
];
์ฌ๊ธฐ์ for๋ฌธ์
for(let i=0; i<names.length; i++){
console.log(names[i]);
}
ํ์ง๋ง forEach ๋ฉ์๋๋ฅผ ์ด๋ค๋ฉด ๋ ๊ฐ๋จํ๊ฒ ์ด๋ค.
function printName(item){
console.log(item); //์ด item์ ๋๊ฐ์ฃผ๋๋ ๋ฐ๋ก forEach()๊ฐ ์์์ ์ค๋ค.
}
// names.forEach(ํจ์) = ๋ฐํํด์ฃผ๋ ๊ฐ์ด ์๋ค.
names.forEach(printName);// forEach๊ฐ ์์์ ํ์ ์ ํ๋ฉด์ ๋งค๋ฒ ๋ฐฐ์ด์ ์์ดํ
์ ํ๋์ฉ ๋๊ธด๋ค.
๐โโ๏ธ ์ต๋ช ํจ์๋ก ๋ ์ธ ์ ์๋ค.
// ์ต๋ช
ํจ์
names.forEach(function(item){
console.log(item); //์ต๋ช
ํจ์๋ ๋ถํ์ํ๊ฒ ๋ฉ๋ชจ๋ฆฌ ์ฐจ์ง ์ํ๊ณ ์ฌ์ฉ๋๊ณ ์ฌ๋ผ์ง
});
๐โโ๏ธ์ต๋ช ํจ์(ES6)
// ์ต๋ช
ํจ์(ES6)
names.forEach((item)=>{
console.log(item);
});
๐โโ๏ธ ์ธ๋ฑ์ค ๋ฒํธ ๋๊ฒจ์ฃผ๊ธฐ
// ๋ฐฐ์ด์ ์ธ๋ฑ์ค ๋ฒํธ๋ ๋๊ฒจ์ค๋ค.
names.forEach((item, index)=>{
console.log(item, index);
});
map ๊ฐ์ ๊ฒฝ์ฐ์๋ ๋ฐฐ์ด์ด ๋ค์ด์๋ค. ๋ฐ๋์ ๋ฐฐ์ด์ ๋ฐํํ๋ค.
let date = names.map((item)=>{
return item; // ์ด๋ค ๊ฒ์ ๋ฆฌํดํ ์ง๋ ์ฌ๊ธฐ์ ์ ํ๋ค.
});
console.log(date);
๊ทธ๋ ๋ค๋ฉด ์ด map() ํจ์๋ ์ธ์ ๋ง์ด ์ฐ์ผ๊น?
์๋ฅผ ๋ค์ด array ์์ ๊ฐ์ฒด๋ค์ด ์์ ๋ ๋๋ name๋ง ๋ชจ์์ ํ๋ฆฐํธ ํ๊ณ ์ถ๋ค.
let ceoList=[{name:"rina", age:23, ceo:true},
{name:"park", age:40, ceo:true},
{name:"kim", age:45, ceo:false}
]
let ceoDate = ceoList.map((item)=>{ //์ด๋ ๊ฒ ์์ฑํ๋ฉด ๋ฐฐ์ด์ name๋ง ๊ฐ์ ธ์
return item.name; //item์ ๋ค์๋ง ๋ฆฌํด์ํค๋ฉด ๋๋ค.
});
console.log(ceoDate);
์กฐ๊ฑด์ ๋ฃ๊ณ ์กฐ๊ฑด์ ๋ํด ์ฐธ์ธ ๊ฒ๋ง ๋ฐํ๋จ
let names = ["Leo",
"Lio",
"Lee",
"Luna"
];
let ceoList=[{name:"rina", age:23, ceo:true},
{name:"park", age:40, ceo:true},
{name:"kim", age:45, ceo:false}
]
let ceoDate2 = ceoList.filter((item)=>{
return item.age==23; // ๋์ด๊ฐ 23์ด์ธ ์ฌ๋๋ง ํํฐ๋ง ํด์ค
});
console.log(ceoDate2);
let ceoDate3 = names.filter((item)=>{
return item.startsWith("L"); //์ฒซ๊ธ์๊ฐ L๋ก ์์ํ๋ ๊ฒ ๋ค ํํฐ๋ง ํด์ค.
});
console.log(ceoDate3);
let names = ["Leo",
"Lio",
"Lee",
"Luna"
];
let ceoDate4 = names.some((item)=>{
return item.startsWith("L"); //์ฒซ๊ธ์๊ฐ L๋ก ์์ํ๋ ๊ฒ์ด ํ๋๋ผ๋ ์๋?
});
console.log("L๋ก ์์ํ๋ : ",ceoDate4); // true
let names = ["Leo",
"Lio",
"Lee",
"Luna"
];
let ceoDate5 = names.every((item)=>{
return item.startsWith("L"); //์ฒซ๊ธ์๊ฐ L๋ก ์์ํ๋ ๊ฒ์ด ๋ชจ๋ ์๋?
});
console.log(ceoDate5); //true
let names = ["Leo",
"Lio",
"Lee",
"Luna"
];
let ceoDate6 = names.find((item)=>{
return item.startsWith("L"); //์ฒซ๊ธ์๊ฐ L๋ก ์์ํ๋ ์ฒซ๋ฒ์งธ ์์ดํ
});
console.log(ceoDate6); //Leo
let names = ["Leo",
"Lio",
"Lee",
"Luna"
];
let ceoDate7 = names.findIndex((item)=>{
return item.startsWith("Luna"); //Luna์ ์ธ๋ฑ์ค ๋ฒํธ.
});
console.log(ceoDate7);