[Java Script] Array.prototype.map() ์ด๋?
๋ฐฑ์ค ๋ฌธ์ ๋ฅผ ํ๋ฉด์ ๋ง์ด ์ฐ๊ณ ์๋ map() ๋ฉ์๋์ ๋ํด ์ ๋ฆฌํด๋ณด๋ คํ๋ค.
map() ๋ฉ์๋๋ ๋ฐฐ์ด ๋ด์ ๋ชจ๋ ์์ ๊ฐ๊ฐ์ ๋ํ์ฌ ์ฃผ์ด์ง ํจ์๋ฅผ ํธ์ถํ ๊ฒฐ๊ณผ๋ฅผ ๋ชจ์ ์๋ก์ด ๋ฐฐ์ด์ ๋ฐํํ๋ค.
๊ตฌ๋ฌธ
array.map(callbackfn(currentValue, index, array), thisArg)
- callbackfn : ์๋ก์ด ๋ฐฐ์ด ์์๋ฅผ ์์ฑํ๋ ํจ์
- currentValue : ์ฒ๋ฆฌํ ํ์ฌ ์์
- index (์๋ต ๊ฐ๋ฅ) : ์ฒ๋ฆฌํ ํ์ฌ ์์์ ์ธ๋ฑ์ค
- array (์๋ต ๊ฐ๋ฅ) : map()์ ํธ์ถํ ๋ฐฐ์ด
- thisArg (์๋ต ๊ฐ๋ฅ) : callback์ ์คํํ ๋ this๋ก ์ฌ์ฉ๋๋ ๊ฐ
์์
const array = [1, 3, 6, 9];
const mapArray = array.map((x) => x * 2);
console.log(mapArray);
array ๋ฐฐ์ด์ ๊ฐ๊ฐ ์์์ ๋ํด *2๋ฅผ ํ ํ ์๋ก์ด ๋ฐฐ์ด mapArray์ ๋ฐํํ๋ค.
๋ฐฑ์ค ๋ฌธ์ ๋ฅผ ํ ๋ ๋ง์ด ์ฌ์ฉํ๋ ๋ฐฉ์์ผ๋ก ์๋ฅผ ๋ค์ด๋ณด์.
const array = ["1", "3", "6", "9"];
const mapArray = array.map((x) => parseInt(x));
console.log(array, typeof array[0]);
console.log(mapArray, typeof mapArray[0]);
๋ฐฑ์ค์์ ๋ฌธ์ ๋ฅผ ํ๋์๋ ๋ณดํต ๋ค์๊ณผ ๊ฐ์ด ์ธ ๋๊ฐ ๋ง๋ค. (๋ฌผ๋ก ๋ค๋ฅธ ๊ฒฝ์ฐ์๋ ๋ง์ด ์ฌ์ฉ!)
let input = require("fs")
.readFileSync("example.txt")
.toString()
.trim()
.split("\n")
.map((x) => parseInt(x)); // input์ ๊ฐ๋ค์ด string์ด๊ธฐ ๋๋ฌธ์ parseInt ํ์ฌ number๋ก ๋ฐ๊ฟ
const count = new Set(input.map((x) => x % 42)).size;
console.log(count);
์ฐธ๊ณ )
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/map
Array.prototype.map() - JavaScript | MDN
map() ๋ฉ์๋๋ ๋ฐฐ์ด ๋ด์ ๋ชจ๋ ์์ ๊ฐ๊ฐ์ ๋ํ์ฌ ์ฃผ์ด์ง ํจ์๋ฅผ ํธ์ถํ ๊ฒฐ๊ณผ๋ฅผ ๋ชจ์ ์๋ก์ด ๋ฐฐ์ด์ ๋ฐํํฉ๋๋ค.
developer.mozilla.org