๐คทโ๏ธ ๋ณธ๋ก ์ ์์ ์ค์ํ ๋ฐฐ์ด ์ฌ์ ์ง์ ๊ณต๋ถํ๊ธฐ
๋ฐฐ์ด reduce() ํจ์ ์ฌ์ฉ๋ฒ์ ๋ํด ์์๋ณด๊ธฐ
https://cometruedream.tistory.com/256
๋ฐฐ์ด join() ํจ์ ์ฌ์ฉ๋ฒ์ ๋ํด ์์๋ณด๊ธฐ
https://cometruedream.tistory.com/254
๋ฐฐ์ด map(), forEach() ์ธ๊ธฐ ์๋ ๋ฉ์๋ ์ฌ์ฉ๋ฒ์ ๋ํด ์์๋ณด๊ธฐ
https://cometruedream.tistory.com/253
ํ์ฉ๊ฐ์น๊ฐ ์ข์ every(), some() ํจ์ ์ฌ์ฉ๋ฒ์ ๋ํด ์์๋ณด๊ธฐ
https://cometruedream.tistory.com/250
์๋ฐ์คํฌ๋ฆฝํธ ๊ฐ์ฒด ์์ฑ๊ณผ ์กฐ์, JSON, ๋ฉ์๋ ๊ฐ๋ ๊ณผ ์ฌ์ฉ๋ฒ
https://cometruedream.tistory.com/261
๐คทโ๏ธ ์๋ฐ์คํฌ๋ฆฝํธ ๋ฐฐ์ด push, pop, shift, unshift๋?
์๋ฐ์คํฌ๋ฆฝํธ๋ ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋จ์ด๋ฉฐ ์ ์ฐํ๊ณ ๊ฐ๋ ฅํ ์ธ์ด์ ๋๋ค.
์๋ฐ์คํฌ๋ฆฝํธ๋ ๋์ ์ธ ์ธ์ด๋ก ๋ฐฐ์ด์ ์์๋ค์ ์ถ๊ฐ, ์ญ์ ๋ฅผ ํธ๋ฆฌํ๊ฒ ๋์์ฃผ๋ ์ ์ฉํ ๋ด์ฅํจ์๋ค์ด ๋ง์ต๋๋ค.
์ ์ฉํ ๋ฐฐ์ด ๋ด์ฅํจ์๋ค ์ค์์๋ push, pop, shift, unshift ํนํ ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉ๋๋ ๋ฐฐ์ด์ ๋ด์ฅํจ์๋ค์ ๋๋ค.
์ด 4๊ฐ์ง ๋ฐฐ์ด ๋ด์ฅํจ์์ ๊ฐ๋ ๊ณผ ์์ ์ ๊ฐ๊ฐ ๋ด์ฅํจ์๋ค์ ์ฐจ์ด์ ์ ๋ํด์ ์์๋ณด๊ฒ ์ต๋๋ค.
๐คทโ๏ธ ๋ฐฐ์ด์ ์ ์ฉํ ๋ด์ฅํจ์ ์์
1. ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉ๋๋ ๋ด์ฅํจ์ push()
- push() ํจ์๋ ๋ฐฐ์ด์ ๋์ ์๋ก์ด ์์์ ๊ฐ์ ์ถ๊ฐํฉ๋๋ค.
- push() ํจ์๋ ๋ฐฐ์ด์ ๊ธธ์ด๋ฅผ ๋ฐํํฉ๋๋ค.
์์
let fruits = ["apple", "banana"];
console.log(fruits.push());
//๊ฒฐ๊ณผ๊ฐ: 2 ๋ฐฐ์ด์ ๊ธธ์ด๋ฅผ ๋ฐํํฉ๋๋ค.
let fruits = ["apple", "banana"];
fruits.push('orange');
console.log(fruits)
//๊ฒฐ๊ณผ๊ฐ: ["apple", "banana", "orange"]
์์ ์์ ์ฒ๋ผ push() ํจ์๋ง ์ ์ธํ๋ฉด ๋ฐฐ์ด์ ๊ธธ์ด๋ฅผ ๋ฐํํฉ๋๋ค.
push() ํจ์์ ๊ฐ์ ๋ฃ์ผ๋ฉด ๋ฐฐ์ด์ ๋งจ๋ค์ ์๋ก์ด ๊ฐ์ ๋ฐํํฉ๋๋ค.
2. ๋ฐฐ์ด ๋ด์ฅํจ์ pop()
- pop() ํจ์๋ ๋ฐฐ์ด์ ๋ง์ง๋ง ์์๋ฅผ ์ ๊ฑฐํฉ๋๋ค.
- push() ํจ์๋ ์ ๊ฑฐ๋ ์์๋ฅผ ๋ฐํํฉ๋๋ค.
์์
let fruits = ["apple", "banana", "orange"];
let removed = fruits.pop();
console.log(fruits);
// ["apple", "banana"] ๋ฐฐ์ด์ ๋ง์ง๋ง ์์๋ฅผ ์ ๊ฑฐํฉ๋๋ค.
console.log(removed);
// removed ๋ณ์์ ๋ฐฐ์ด์ ๋ง์ง๋ง ๊ฐ "orange" ๋ด์ต๋๋ค.
์์ ์์ ์ฒ๋ผ pop() ํจ์๋ฅผ ์ ์ธํ๋ฉด ๋ฐฐ์ด์ ๋ง์ง๋ง์์๋ฅผ ์ ๊ฑฐํ๊ณ ๋ณ์์ ์ ๊ฑฐํ ๋ง์ง๋ง ๊ฐ์ ๋ด์ ์ ์์ต๋๋ค.
3. ๋ฐฐ์ด ๋ด์ฅํจ์ shift()
- shift() ํจ์๋ ๋ฐฐ์ด์ ์ฒซ ๋ฒ์งธ ์์๋ฅผ ์ ๊ฑฐํฉ๋๋ค.
- shift() ํจ์๋ ์ ๊ฑฐ๋ ์์๋ฅผ ๋ฐํํฉ๋๋ค.
์์
let fruits = ["apple", "banana", "orange"];
let removed = fruits.shift();
console.log(fruits);
// ["banana", "orange"] ๋ฐฐ์ด์ ์ฒซ๋ฒ์งธ ์์๋ฅผ ์ ๊ฑฐํฉ๋๋ค.
console.log(removed);
// removed ๋ณ์์ ๋ฐฐ์ด์ ์ฒซ๋ฒ์งธ ๊ฐ "apple" ๋ด์ต๋๋ค.
pop() ๋ด์ฅํจ์ ๋ฐ๋๋ก ๋ฐฐ์ด์ ์ฒซ๋ฒ์งธ ๊ฐ์ ์ ๊ฑฐํ๊ณ ๋ณ์์ ์ ๊ฑฐํ ์ฒซ ๋ฒ์งธ ๊ฐ์ ๋ด์ต๋๋ค.
4. ๋ฐฐ์ด ๋ด์ฅํจ์ unshift()
- unshift() ํจ์๋ ๋ฐฐ์ด์ ์ฒซ ๋ฒ์งธ ์์๋ฅผ ์ถ๊ฐํฉ๋๋ค.
- unshift() ํจ์๋ ๋ฐฐ์ด์ ๊ธธ์ด๋ฅผ ๋ฐํํฉ๋๋ค.
์์
let fruits = ["apple", "banana", "orange"];
fruits.unshift("grape");
console.log(fruits.unshift())
//๊ฒฐ๊ณผ๊ฐ: 4
console.log(fruits);
//๊ฒฐ๊ณผ๊ฐ: ["grape", "apple", "banana", "orange"]
unshift() ํจ์๋ push() ํจ์์ ๋ฐ๋๋ก ๋งจ์์ ๋ฐฐ์ด์ ์์๋ฅผ ์ถ๊ฐํ๊ณ ๋น ํจ์๋ง ์คํํ๋ฉด ๋ฐฐ์ด์ ๊ธธ์ด๋ฅผ ๋ฐํํฉ๋๋ค.
5. push() vs unshift(
- push() ํจ์๋ ๋ฐฐ์ด์ ๋ง์ง๋ง์ ์๋ก์ด ์์๋ฅผ ์ถ๊ฐํฉ๋๋ค.
- unshift() ํจ์๋ ๋ฐฐ์ด์ ๋งจ์์ ์๋ก์ด ์์๋ฅผ ์ถ๊ฐํฉ๋๋ค.
์์
let fruits = ["apple", "banana"];
fruits.push("orange");
console.log(fruits);
//๊ฒฐ๊ณผ๊ฐ: ["apple", "banana", "orange"]
fruits.unshift("grape");
console.log(fruits);
//๊ฒฐ๊ณผ๊ฐ: ["grape", "apple", "banana", "orange"]
unshift() ํจ์๋ push() ํจ์์ ๋ฐ๋๋ก ๋งจ ์์ ๋ฐฐ์ด์ ์์๋ฅผ ์ถ๊ฐํ๊ณ ๋น ํจ์๋ง ์คํํ๋ฉด ๋ฐฐ์ด์ ๊ธธ์ด๋ฅผ ๋ฐํํฉ๋๋ค.
6. pop() vs shift()
- pop() ํจ์๋ ๋ฐฐ์ด์ ๋ง์ง๋ง ์์๋ฅผ ์ ๊ฑฐํฉ๋๋ค.
- shift() ํจ์๋ ๋ฐฐ์ด์ ์ฒซ๋ฒ์งธ ์์๋ฅผ ์ ๊ฑฐํฉ๋๋ค.
์์
let fruits = ["apple", "banana", "orange"];
let removed = fruits.pop();
console.log(fruits); // ["apple", "banana"]
console.log(removed); // "orange"
removed = fruits.shift();
console.log(fruits); // ["banana"]
console.log(removed); // "apple"
shift() ํจ์ ์คํํ ๊ฐ์ด “banana” ๋จ์์ ์๋ชป๋ ๊ฐ์ด๋ผ๊ณ ์๊ฐํ์ค ์ ์์ง๋ง ๊น์ ๋ณต์ฌ์ ์์ ๋ณต์ฌ์ ๊ฐ๋ ์ด์ง๋ง ์๋ณธ์ ๋ฐฐ์ด์ ๊ฐ์ ์์ ํ๊ธฐ ๋๋ฌธ์ ๋ฐ์๋๋ ํ์์ ๋๋ค.
๐คทโ๏ธ ๋ง์ง๋ง์ผ๋ก
์๋ฐ์คํฌ๋ฆฝํธ์์ ๋ฐฐ์ด์ ๋ฐ์ดํฐ๋ฅผ ๋ฆฌ์คํธ์ ํ๋ ์๋ฃ๊ตฌ์กฐ๋ก ๋ง์ด ์ฌ์ฉ๋ฉ๋๋ค.
๊ทธ๋์ ์ ์ฉํ ๋ฐฐ์ด ๋ด์ฅํจ์๋ค์ด ์กด์ฌํ๋ฉฐ ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉ๋๊ณ ์ค์ํ 4๊ฐ์ง์ ๋ฐฐ์ด ๋ด์ฅํจ์์ ๋ํด์ ์์๋ดค์ต๋๋ค.
push(), pop(), shift(), unshift() ๋ด์ฅํจ์์ ๋ํด์ ์ฐจ์ด์ ๊ณผ ๊ฐ๋ ๊ณผ ์์ ์ ๋ํด์ ์ดํด๋ณด์์ต๋๋ค.
4๊ฐ์ง ๋ด์ฅํจ์๋ฅผ ํตํด์ ํ์ํ ์ํฉ์ ์ ์ฌ์ ์ํ๊ฒ ์ฌ์ฉํ๋ฉด ์ข์ ๊ฑฐ ๊ฐ์ต๋๋ค.
์ฌ๋ฐ๋ ์ค๋์ ๋ ๋ณ ์ด์ธ ๋ณด๊ณ ๊ฐ์ธ์!
https://cometruedream.tistory.com/247
https://cometruedream.tistory.com/243
https://cometruedream.tistory.com/242
https://cometruedream.tistory.com/241
https://cometruedream.tistory.com/244