javascript 배열을 가공하는 map과 fill에 대해서 알아보아요.
javascript – map
var numbers = [1, 4, 9]; var roots = numbers.map(Math.sqrt); // roots는
[1, 2, 3] // numbers는 그대로 [1, 4, 9]
배열을 가져와 새로운 배열을 만듬.
(Math.sqrt는 숫자의 제곱근을 반환함.)
var kvArray = [{key:1, value:10}, {key:2, value:20}, {key:3, value: 30}];
var reformattedArray = kvArray.map(function(obj){ var rObj = {};
rObj[obj.key] = obj.value; return rObj; }); // reformattedArray는 [{1:10},
{2:20}, {3:30}] // kvArray는 그대로 // [{key:1, value:10}, // {key:2,
value:20}, // {key:3, value: 30}]
kvArray의 map( 요소, 요소의 인덱스)은 각 요소와 인덱스를 갖고 새로운 배열을
만듬.
ex) obj.key 는 kvArray의 key값을 갖고오고, obj,value는 kvArray의 value값을
갖고옴.
javascript – fill
var array1 = [1, 2, 3, 4]; // fill with 0 from position 2 until position 4
console.log(array1.fill(0, 2, 4)); // expected output: [1, 2, 0, 0] //
fill with 5 from position 1 console.log(array1.fill(5, 1)); // expected
output: [1, 5, 5, 5] console.log(array1.fill(6)); // expected output: [6,
6, 6, 6]
fill 은 배열에 값을 넣어줌.
ex) array1.fill(a,b,c);
array1 배열에 a 숫자를 b번째 부터 c번째 까지 넣어준다.
b,c를 지정해주지 않으면 기본값은 시작:0, 끝: 끝까지.