์๋ก ๋ฐฐ์ด jsํจ์
#Math.pow()ํจ์
ํจ์๋base^exponent์ฒ๋ผ base ์ exponent๋ฅผ ์ ๊ณฑํ ๊ฐ์ ๋ฐํํฉ๋๋ค.
#์์
Math.pow(base, exponent);
base : 2,8,10,16 ์ง์๋ฅผ ๋ฃ๋ ๊ณณ.
exponent : ์ง์๋ค์ ์ ๊ณฑํ๊ธฐ ์ํด ์ฌ์ฉํ๋ ์ง์.
#๋ค๋ฅธ ๋ฐฉ๋ฒ ์์
(base ** exponent)
** ๋๊ฐ๋ง ์ ์ด๋ Math.pow์ ์ญํ ์ ํ๋ค.
๋ค๋ฅธ ๋ฐฉ์์ผ๋ก๋ ์ฐ์ด๋ ๊ถ๊ธํ๋ฉด ์ฐพ์ ๋ณด์๊ธธ ๋ฐ๋๋๋ค. (๋ค๋ฅธ ๋ฐฉ์์ ์ถํ์ ์
๋ก๋ ์์ )
#split() ํจ์
์ด ๋ฉ์๋๋ String ๊ฐ์ฒด๋ฅผ ์ง์ ํ ๊ตฌ๋ถ์๋ฅผ ์ด์ฉํ์ฌ ์ฌ๋ฌ ๊ฐ์ ๋ฌธ์์ด๋ก ๋๋๋๋ค.
#์์
const str = 'Theโquickโbrownโfox';
const words = str.split('โ'); // โํ์๊ฐ ๋ ๋ถ๋ถ์ ์ธ์ ํ๊ณ ๋ฐฐ์ด๋ก ๋๋ ์ ์ถ๋ ฅํ ์์๋ค.
console.log(words[3]);
// expected output: "fox"
#๋ค๋ฅธ ์์
const str = 'A,B,C,D';
const words = str.split(','); // ,ํ์๊ฐ ๋ ๋ถ๋ถ์ ์ธ์ ํ๊ณ ๋ฐฐ์ด๋ก ๋๋ ์ ์ถ๋ ฅํ ์์๋ค.
console.log(words[2]);
// expected output: "C"
๋ค๋ฅธ ๋ฐฉ์์ผ๋ก๋ ์ฐ์ด๋ ๊ถ๊ธํ๋ฉด ์ฐพ์ ๋ณด์๊ธธ ๋ฐ๋๋๋ค. (๋ค๋ฅธ ๋ฐฉ์์ ์ถํ์ ์
๋ก๋ ์์ )
#Number() ํจ์
Number ๊ฐ์ฒด๋ ์ซ์ ๊ฐ์ผ๋ก ์์
ํ ์ ์๊ฒ ํด์ฃผ๋ ๋ํผ(wrapper) ๊ฐ์ฒด์
๋๋ค. Number ๊ฐ์ฒด๋ Number() ์์ฑ์๋ฅผ ์ฌ์ฉํ์ฌ ๋ง๋ญ๋๋ค.
#์์
new Number(value);
var a = new Number('123'); // a === 123์ false
var b = Number('123'); // b === 123์ true
a instanceof Number; // true
b instanceof Number; // false
value : ์์ฑํ ๊ฐ์ฒด์ ์ซ์ ๊ฐ.
Number ๊ฐ์ฒด์ ์ฃผ๋ ์ฉ๋๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
๋ง์ฝ ์ธ์๋ฅผ ์ซ์๋ก ๋ณํํ ์ ์์ผ๋ฉด NaN์ ๋ฆฌํดํฉ๋๋ค.
์์ฑ์๋ก์จ ์ฌ์ฉํ์ง ์์ผ๋ฉด(new ์ฐ์ฐ์๋ฅผ ์ฌ์ฉํ์ง ์์ผ๋ฉด) Number๋ฅผ ์ฌ์ฉํ์ฌ ํ๋ณํ์ ํ ์ ์์ต๋๋ค.
#sort() ํจ์
์ด ๋ฉ์๋๋ ๋ฐฐ์ด์ ์์๋ฅผ ์ ์ ํ ์์น์ ์ ๋ ฌํ ํ ๊ทธ ๋ฐฐ์ด์ ๋ฐํํฉ๋๋ค.
์ ๋ ฌ์ stable sort๊ฐ ์๋ ์ ์์ต๋๋ค.
๊ธฐ๋ณธ ์ ๋ ฌ ์์๋ ๋ฌธ์์ด์ ์ ๋์ฝ๋ ์ฝ๋ ํฌ์ธํธ๋ฅผ ๋ฐ๋ฆ
๋๋ค.
#์์
const array1 = [1, 30, 4, 21, 100000];
array1.sort((a,b) => a - b); // {์ค์} sortํจ์ ์์ (a,b) => a - b ์จ์ a์ b๋ฅผ ๋บ์
์ ํ์ฌ ๋์จ ๊ฐ์ด ์์์ด๋ฉด a๊ฐ b์ ์๋ฆฌ๋ฅผ ๋ฐ๊พผ๋ค,
//๋ ์์์ด๋ฉด ์๋ฆฌ๋ฅผ ๋ฐ๊พธ์ง ์๊ณ ๋ค์ ๋ฐฐ์ด์์ ๊ฐ๊ณผ ๋บ์
์ ํ๋ค
//์๋ฅผ ๋ค์ด 1-30 = -29 ์ด๋ค. ์์์ด๊ธฐ ๋๋ฌธ์ ์๋ฆฌ๋ฅผ ๋ฐ๊พธ์ง ์๊ณ 30์ ๋ค์ ๊ฐ์ธ 4์ ๋บ์
์ ํ๋ค 30-4 = 26 ์์ ์ด๊ธฐ ๋๋ฌธ์ 30 ๊ณผ 4์ ์๋ฆฌ๋ฅผ ๋ฐ๊พผ๋ค.
//์ด๋ ๊ฒ ํ์ฌ ์์ ๊ฐ์ ์์ผ๋ก ํฐ ๊ฐ์ ๋ค๋ก ๊ฐ๋ ์ ๋ ฌ ๋ฐฉ์์ด๋ค. ์ด๊ฒ์ ์ธ์๋๋ฉด ์ ๋ง ์ข์ ๋ฐฉ์์ด๋ค.
console.log(array1);
// expected output: Array [1, 100000, 21, 30, 4]
#parseInt() ํจ์
ํจ์๋ ๋ฌธ์์ด ์ธ์๋ฅผ ๊ตฌ๋ฌธ๋ถ์ํ์ฌ ํน์ ์ง์(์์ ์ง๋ฒ ์ฒด๊ณ์ ๊ธฐ์ค์ด ๋๋ ๊ฐ)์ ์ ์๋ฅผ ๋ฐํํฉ๋๋ค.
let Hex = 'A';
console.log(roughScale(Hex, 16)); // 16์ง์๋ฅผ 10์ง์๋ก ๋ฐ๊พธ๋ ์ฝ๋
#join() ํจ์
join() ๋ฉ์๋๋ ๋ฐฐ์ด์ ๋ชจ๋ ์์๋ฅผ ์ฐ๊ฒฐํด ํ๋์ ๋ฌธ์์ด๋ก ๋ง๋ญ๋๋ค.
#์์
const elements = ['Fire', 'Air', 'Water'];
console.log(elements.join(''));
// expected output: "FireAirWater" // 'Fire', 'Air', 'Water'์ด ์ฌ์ด์ฌ์ด์ ์๋ฌด๋ฐ ๊ธฐํธ ์์ด ์ถ๋ ฅ์ด ๋๋ค.
console.log(elements.join('-'));
// expected output: "Fire-Air-Water" // 'Fire', 'Air', 'Water'์ด join('-'); ์ด๋ ๊ฒ ์จ์ค๋ค๋ฉด ์ฌ์ด์ฌ์ด์ ' - '์ด ๋ถ์ด์ ์ถ๋ ฅ์ด ๋๋ค.
#slice() ํจ์
slice() ๋ฉ์๋๋ ์ด๋ค ๋ฐฐ์ด์ begin๋ถํฐ end๊น์ง(end ๋ฏธํฌํจ)์ ๋ํ ์์ ๋ณต์ฌ๋ณธ์ ์๋ก์ด ๋ฐฐ์ด ๊ฐ์ฒด๋ก ๋ฐํํฉ๋๋ค.
์๋ณธ ๋ฐฐ์ด์ ๋ฐ๋์ง ์์ต๋๋ค.
#์์
const animals = ['ant', 'bison', 'camel', 'duck', 'elephant'];
//์๋ฅผ ๋ค์ด, slice(1,4)๋ ๋๋ฒ์งธ ์์๋ถํฐ ๋ค๋ฒ์งธ ์์๊น์ง (1, 2 ๋ฐ 3์ ์ธ๋ฑ์ค๋ก ํ๋ ์์) ์ถ์ถํฉ๋๋ค.
console.log(animals.slice(2));
// expected output: Array ["camel", "duck", "elephant"]
console.log(animals.slice(2, 4));
// expected output: Array ["camel", "duck"]
console.log(animals.slice(1, 5));
// expected output: Array ["bison", "camel", "duck", "elephant"]
console.log(animals.slice(-2));
// expected output: Array ["duck", "elephant"]
console.log(animals.slice(2, -1));
// expected output: Array ["camel", "duck"]
์์ ์ธ๋ฑ์ค๋ ๋ฐฐ์ด์ ๋์์๋ถํฐ์ ๊ธธ์ด๋ฅผ ๋ํ๋
๋๋ค.
slice(-2) ๋ ๋ฐฐ์ด์์ ๋ง์ง๋ง ๋ ๊ฐ์ ์๋ฆฌ๋จผํธ๋ฅผ ์ถ์ถํฉ๋๋ค.
#shift() ํจ์
shift() ๋ฉ์๋๋ ๋ฐฐ์ด์์ ์ฒซ ๋ฒ์งธ ์์๋ฅผ ์ ๊ฑฐํ๊ณ , ์ ๊ฑฐ๋ ์์๋ฅผ ๋ฐํํฉ๋๋ค. ์ด ๋ฉ์๋๋ ๋ฐฐ์ด์ ๊ธธ์ด๋ฅผ ๋ณํ๊ฒ ํฉ๋๋ค.
const array1 = [1, 2, 3];
const firstElement = array1.shift(); // ์ด๋ฐ ์์ผ๋ก ๋ณ์์ ๊ฐ์ด ํจ์๋ฅผ ์ฌ์ฉํ๋ค๋ฉด ๋ฆฌํด๊ฐ์ ๋ณ์์ ์ ์ฅํจ. ๋ณ์๋ฅผ ์ ์ด๋ค๋ฉด ๋ฆฌํด๊ฐ์ ์ฌ์ฉํ ์๊ฐ ์์.
console.log(array1);
// expected output: Array [2, 3]
console.log(firstElement);
// output: 1
#Array.from() ํจ์
Array.from() ๋ฉ์๋๋ ์ ์ฌ ๋ฐฐ์ด ๊ฐ์ฒด๋ ๋ฐ๋ณต ๊ฐ๋ฅํ ๊ฐ์ฒด๋ฅผ ์๊ฒ ๋ณต์ฌํด ์๋ก์ดArray ๊ฐ์ฒด๋ฅผ ๋ง๋ญ๋๋ค.
console.log(Array.from('foo'));
// expected output: Array ["f", "o", "o"]
console.log(Array.from([1, 2, 3], x => x + x));
// expected output: Array [2, 4, 6]