๐ฉ join
๋ฐฐ์ด์ ๋ชจ๋ ์์๋ฅผ ์ฐ๊ฒฐํด ํ๋์ ๋ฌธ์์ด๋ก ๋ง๋ญ๋๋ค.
const arr = ['a', 'b', 'c'];
console.log(arr.join()); // a,b,c
console.log(arr.join('')); // abc
console.log(arr.join('-')); // a-b-c
๐ฉ splice
๋ฐฐ์ด์ ๊ธฐ์กด ์์๋ฅผ ์ญ์ ๋๋ ๊ต์ฒดํ๊ฑฐ๋ ์ ์์๋ฅผ ์ถ๊ฐํฉ๋๋ค.
์๋ณธ ๋ฐฐ์ด์ ๋ด์ฉ์ ๋ณ๊ฒฝํฉ๋๋ค. ( *์๋ณธ ๋ฐฐ์ด์ ๋ณ๊ฒฝํ์ง ์์ผ๋ ค๋ฉด .toSpliced() ์ฌ์ฉ )
๋ฐํ๊ฐ์ ์ ๊ฑฐํ ์์๋ฅผ ๋ด์ ๋ฐฐ์ด
.slice(์ธ๋ฑ์ค, ์ญ์ ํ ๊ฐ์, ์ถ๊ฐํ ์์ดํ )
const arr = ['a', 'b', 'c'];
const result = arr.splice(1, 1);
console.log(arr); // ['a', 'c'] โ 1๋ฒ ์ธ๋ฑ์ค๋ถํฐ ์์ 1๊ฐ ์ ๊ฑฐ
console.log(result); // ['b'] โ ์ ๊ฑฐํ ์์๋ฅผ ๋ด์ ๋ฐฐ์ด ๋ฐํ
const arr = ['a', 'b', 'c'];
const result = arr.splice(1, 1, 'd');
console.log(arr); // ['a', 'd', 'c'] โ 1๋ฒ ์ธ๋ฑ์ค๋ถํฐ 1๊ฐ ์ ๊ฑฐ ํ, 'd' ์ถ๊ฐ
console.log(result); // ['b'] โ ์ ๊ฑฐํ ์์๋ฅผ ๋ด์ ๋ฐฐ์ด ๋ฐํ
const arr = ['a', 'b', 'c'];
const result = arr.splice(1, 0, 'd');
console.log(arr); // ['a', 'd', 'b', 'c'] โ 1๋ฒ ์ธ๋ฑ์ค๋ถํฐ 0๊ฐ ์ ๊ฑฐ ํ, 'd' ์ถ๊ฐ
console.log(result); // [] โ ์ ๊ฑฐ๋ ์์๊ฐ ์๊ธฐ ๋๋ฌธ์ ๋น ๋ฐฐ์ด ๋ฐํ
๐ฉ slice
๋ฐฐ์ด์ begin๋ถํฐ end๊น์ง(end ๋ฏธํฌํจ)์ ๋ํ ์๋ก์ด ๋ฐฐ์ด ๋ฐํํฉ๋๋ค.
์๋ณธ ๋ฐฐ์ด์ ๋ฐ๋์ง ์์ต๋๋ค.
.slice(begin ์ธ๋ฑ์ค, end ์ธ๋ฑ์ค)
const arr = ['a', 'b', 'c'];
const result1 = arr.slice(1, 2);
const result2 = arr.slice(1);
console.log(arr); // ['a', 'b', 'c'] โ ์๋ณธ ๋ฐฐ์ด์ ๋ฐ๋์ง ์์
console.log(result1); // ['b'] โ 1๋ฒ ์ธ๋ฑ์ค๋ถํฐ 1๋ฒ ์ธ๋ฑ์ค๋ก ์ด๋ฃจ์ด์ง ์๋ก์ด ๋ฐฐ์ด ๋ฐํ
console.log(result2); // ['b', 'c'] โ 1๋ฒ ์ธ๋ฑ์ค๋ถํฐ ๋ง์ง๋ง ์ธ๋ฑ์ค๋ก ์ด๋ฃจ์ด์ง ์๋ก์ด ๋ฐฐ์ด ๋ฐํ
๐ฉ shift
๋ฐฐ์ด์์ ์ฒซ ๋ฒ์งธ ์์๋ฅผ ์ ๊ฑฐํ๊ณ , ์ ๊ฑฐ๋ ์์๋ฅผ ๋ฐํํฉ๋๋ค.
์๋ณธ ๋ฐฐ์ด์ด ๋ณ๊ฒฝ๋ฉ๋๋ค.
const arr = ['a', 'b', 'c'];
const first = arr.shift();
console.log(arr); // ['b', 'c'] โ ์ฒซ ๋ฒ์งธ ์์ ์ ๊ฑฐ
console.log(first); // a โ ์ ๊ฑฐ๋ ์์ ๋ฐํ
๐ฉ unshift
์๋ก์ด ์์๋ฅผ ๋ฐฐ์ด์ ๋งจ ์์ชฝ์ ์ถ๊ฐํ๊ณ , ์๋ก์ด ๊ธธ์ด๋ฅผ ๋ฐํํฉ๋๋ค.
์๋ณธ ๋ฐฐ์ด์ด ๋ณ๊ฒฝ๋ฉ๋๋ค.
const arr = ['a', 'b', 'c'];
const length = arr.unshift('e');
console.log(arr); // ['e', 'a', 'b', 'c'] โ 'e'๋ฅผ ๋งจ ์์ ์ถ๊ฐ
console.log(length); // ์๋ก์ด ๊ธธ์ด ๋ฐํ
๐ฉ reduce / reduceRight
๋ฐฐ์ด์ ์์๋ค์ ๋๋ฉด์ ๊ฐ์ ๊ณ์ฐํ๊ณ , ๊ทธ ๊ฐ์ ๋ฐํํฉ๋๋ค.
// prev: ์ด์ ์ฝ๋ฐฑํจ์์ ๋ฐํ๊ฐ์ด ์ ์ฅ๋ฉ๋๋ค.
// curr: ์์ฐจ์ ์ผ๋ก ๋ฐฐ์ด์ ์์ ๋ฐํ
// ๋ฐฐ์ด์ ์ผ์ชฝ์์ ์ค๋ฅธ์ชฝ์ผ๋ก ๊ณ์ฐ
reduce((prev, curr) => prev + curr, ์ด๊ธฐ๊ฐ)
// ๋ฐฐ์ด์ ์ค๋ฅธ์ชฝ์์ ์ผ์ชฝ์ผ๋ก ๊ณ์ฐ
reduceRight((prev, curr) => prev + curr, ์ด๊ธฐ๊ฐ)
const arr = [1, 2, 3];
const sum = arr.reduce((prev, curr) => prev + curr, 0);
console.log(arr); // [1, 2, 3]
console.log(sum); // 6
const arr = [1, 2, 3];
const sum = arr.reduceRight((prev, curr) => prev + curr, 0);
console.log(arr); // [1, 2, 3]
console.log(sum); // 6
๐ฉ sort
๋ฐฐ์ด์ ์์๋ฅผ ์ ๋ ฌํ ํ, ๊ทธ ๋ฐฐ์ด์ ๋ฐํํฉ๋๋ค.
์๋ณธ ๋ฐฐ์ด์ด ๋ณ๊ฒฝ๋ฉ๋๋ค. ( *์๋ณธ ๋ฐฐ์ด์ ๋ณ๊ฒฝํ์ง ์์ผ๋ ค๋ฉด .toSorted() ์ฌ์ฉ )
const arr = [2, 1, 3];
const result = arr.sort((a, b) => a - b);
console.log(arr); // [1, 2, 3] โ ์ค๋ฆ์ฐจ์
console.log(result); // [1, 2, 3]
const arr = [2, 1, 3];
const result = arr.sort((a, b) => b - a);
console.log(arr); // [3, 2, 1] โ ๋ด๋ฆผ์ฐจ์
console.log(result); // [3, 2, 1]
๐ฉ reverse
๋ฐฐ์ด์ ์์๋ฅผ ๋ฐ์ ํฉ๋๋ค.
์๋ณธ ๋ฐฐ์ด์ด ๋ณ๊ฒฝ๋ฉ๋๋ค. ( *์๋ณธ ๋ฐฐ์ด์ ๋ณ๊ฒฝํ์ง ์์ผ๋ ค๋ฉด .toReversed() ์ฌ์ฉ )
const arr = [1, 2, 3];
const result = arr.reverse();
console.log(arr); // [3, 2, 1]
console.log(result); // [3, 2, 1]
๐ฉ join
๋ฐฐ์ด์ ๋ชจ๋ ์์๋ฅผ ์ฐ๊ฒฐํด ํ๋์ ๋ฌธ์์ด๋ก ๋ง๋ญ๋๋ค.
const arr = ['a', 'b', 'c'];
console.log(arr.join()); // a,b,c
console.log(arr.join('')); // abc
console.log(arr.join('-')); // a-b-c
๐ฉ splice
๋ฐฐ์ด์ ๊ธฐ์กด ์์๋ฅผ ์ญ์ ๋๋ ๊ต์ฒดํ๊ฑฐ๋ ์ ์์๋ฅผ ์ถ๊ฐํฉ๋๋ค.
์๋ณธ ๋ฐฐ์ด์ ๋ด์ฉ์ ๋ณ๊ฒฝํฉ๋๋ค. ( *์๋ณธ ๋ฐฐ์ด์ ๋ณ๊ฒฝํ์ง ์์ผ๋ ค๋ฉด .toSpliced() ์ฌ์ฉ )
๋ฐํ๊ฐ์ ์ ๊ฑฐํ ์์๋ฅผ ๋ด์ ๋ฐฐ์ด
.slice(์ธ๋ฑ์ค, ์ญ์ ํ ๊ฐ์, ์ถ๊ฐํ ์์ดํ )
const arr = ['a', 'b', 'c'];
const result = arr.splice(1, 1);
console.log(arr); // ['a', 'c'] โ 1๋ฒ ์ธ๋ฑ์ค๋ถํฐ ์์ 1๊ฐ ์ ๊ฑฐ
console.log(result); // ['b'] โ ์ ๊ฑฐํ ์์๋ฅผ ๋ด์ ๋ฐฐ์ด ๋ฐํ
const arr = ['a', 'b', 'c'];
const result = arr.splice(1, 1, 'd');
console.log(arr); // ['a', 'd', 'c'] โ 1๋ฒ ์ธ๋ฑ์ค๋ถํฐ 1๊ฐ ์ ๊ฑฐ ํ, 'd' ์ถ๊ฐ
console.log(result); // ['b'] โ ์ ๊ฑฐํ ์์๋ฅผ ๋ด์ ๋ฐฐ์ด ๋ฐํ
const arr = ['a', 'b', 'c'];
const result = arr.splice(1, 0, 'd');
console.log(arr); // ['a', 'd', 'b', 'c'] โ 1๋ฒ ์ธ๋ฑ์ค๋ถํฐ 0๊ฐ ์ ๊ฑฐ ํ, 'd' ์ถ๊ฐ
console.log(result); // [] โ ์ ๊ฑฐ๋ ์์๊ฐ ์๊ธฐ ๋๋ฌธ์ ๋น ๋ฐฐ์ด ๋ฐํ
๐ฉ slice
๋ฐฐ์ด์ begin๋ถํฐ end๊น์ง(end ๋ฏธํฌํจ)์ ๋ํ ์๋ก์ด ๋ฐฐ์ด ๋ฐํํฉ๋๋ค.
์๋ณธ ๋ฐฐ์ด์ ๋ฐ๋์ง ์์ต๋๋ค.
.slice(begin ์ธ๋ฑ์ค, end ์ธ๋ฑ์ค)
const arr = ['a', 'b', 'c'];
const result1 = arr.slice(1, 2);
const result2 = arr.slice(1);
console.log(arr); // ['a', 'b', 'c'] โ ์๋ณธ ๋ฐฐ์ด์ ๋ฐ๋์ง ์์
console.log(result1); // ['b'] โ 1๋ฒ ์ธ๋ฑ์ค๋ถํฐ 1๋ฒ ์ธ๋ฑ์ค๋ก ์ด๋ฃจ์ด์ง ์๋ก์ด ๋ฐฐ์ด ๋ฐํ
console.log(result2); // ['b', 'c'] โ 1๋ฒ ์ธ๋ฑ์ค๋ถํฐ ๋ง์ง๋ง ์ธ๋ฑ์ค๋ก ์ด๋ฃจ์ด์ง ์๋ก์ด ๋ฐฐ์ด ๋ฐํ
๐ฉ shift
๋ฐฐ์ด์์ ์ฒซ ๋ฒ์งธ ์์๋ฅผ ์ ๊ฑฐํ๊ณ , ์ ๊ฑฐ๋ ์์๋ฅผ ๋ฐํํฉ๋๋ค.
์๋ณธ ๋ฐฐ์ด์ด ๋ณ๊ฒฝ๋ฉ๋๋ค.
const arr = ['a', 'b', 'c'];
const first = arr.shift();
console.log(arr); // ['b', 'c'] โ ์ฒซ ๋ฒ์งธ ์์ ์ ๊ฑฐ
console.log(first); // a โ ์ ๊ฑฐ๋ ์์ ๋ฐํ
๐ฉ unshift
์๋ก์ด ์์๋ฅผ ๋ฐฐ์ด์ ๋งจ ์์ชฝ์ ์ถ๊ฐํ๊ณ , ์๋ก์ด ๊ธธ์ด๋ฅผ ๋ฐํํฉ๋๋ค.
์๋ณธ ๋ฐฐ์ด์ด ๋ณ๊ฒฝ๋ฉ๋๋ค.
const arr = ['a', 'b', 'c'];
const length = arr.unshift('e');
console.log(arr); // ['e', 'a', 'b', 'c'] โ 'e'๋ฅผ ๋งจ ์์ ์ถ๊ฐ
console.log(length); // ์๋ก์ด ๊ธธ์ด ๋ฐํ
๐ฉ reduce / reduceRight
๋ฐฐ์ด์ ์์๋ค์ ๋๋ฉด์ ๊ฐ์ ๊ณ์ฐํ๊ณ , ๊ทธ ๊ฐ์ ๋ฐํํฉ๋๋ค.
// prev: ์ด์ ์ฝ๋ฐฑํจ์์ ๋ฐํ๊ฐ์ด ์ ์ฅ๋ฉ๋๋ค.
// curr: ์์ฐจ์ ์ผ๋ก ๋ฐฐ์ด์ ์์ ๋ฐํ
// ๋ฐฐ์ด์ ์ผ์ชฝ์์ ์ค๋ฅธ์ชฝ์ผ๋ก ๊ณ์ฐ
reduce((prev, curr) => prev + curr, ์ด๊ธฐ๊ฐ)
// ๋ฐฐ์ด์ ์ค๋ฅธ์ชฝ์์ ์ผ์ชฝ์ผ๋ก ๊ณ์ฐ
reduceRight((prev, curr) => prev + curr, ์ด๊ธฐ๊ฐ)
const arr = [1, 2, 3];
const sum = arr.reduce((prev, curr) => prev + curr, 0);
console.log(arr); // [1, 2, 3]
console.log(sum); // 6
const arr = [1, 2, 3];
const sum = arr.reduceRight((prev, curr) => prev + curr, 0);
console.log(arr); // [1, 2, 3]
console.log(sum); // 6
๐ฉ sort
๋ฐฐ์ด์ ์์๋ฅผ ์ ๋ ฌํ ํ, ๊ทธ ๋ฐฐ์ด์ ๋ฐํํฉ๋๋ค.
์๋ณธ ๋ฐฐ์ด์ด ๋ณ๊ฒฝ๋ฉ๋๋ค. ( *์๋ณธ ๋ฐฐ์ด์ ๋ณ๊ฒฝํ์ง ์์ผ๋ ค๋ฉด .toSorted() ์ฌ์ฉ )
const arr = [2, 1, 3];
const result = arr.sort((a, b) => a - b);
console.log(arr); // [1, 2, 3] โ ์ค๋ฆ์ฐจ์
console.log(result); // [1, 2, 3]
const arr = [2, 1, 3];
const result = arr.sort((a, b) => b - a);
console.log(arr); // [3, 2, 1] โ ๋ด๋ฆผ์ฐจ์
console.log(result); // [3, 2, 1]
๐ฉ reverse
๋ฐฐ์ด์ ์์๋ฅผ ๋ฐ์ ํฉ๋๋ค.
์๋ณธ ๋ฐฐ์ด์ด ๋ณ๊ฒฝ๋ฉ๋๋ค. ( *์๋ณธ ๋ฐฐ์ด์ ๋ณ๊ฒฝํ์ง ์์ผ๋ ค๋ฉด .toReversed() ์ฌ์ฉ )
const arr = [1, 2, 3];
const result = arr.reverse();
console.log(arr); // [3, 2, 1]
console.log(result); // [3, 2, 1]