알고리즘 문제
{ 1, 8 }, { 2, 7 }, { 3, 6 }, { 4, 5 }
합이 9 라는 말에서 길이가 9인 배열로 만들어야 겠다는 생각이 들었다.
우선 임의의 배열을 만든다.
var arr = new Array(9) // 길이가 9인 배열
console.log(arr)// [ <9 empty items> ]
그런다음 map을 돌려서 index를 추가해서 요소들을 생성하려 했다.
var newArr = arr.map((el,i)=>i+1)
console.log(newArr) // [ <9 empty items> ]
각 배열자리에 아무것도 없기에 할당이 안된다. undefined, null 등을 넣어야 할것 같은데...
Array의 자리값에 정적으로 무언가를 채워줄 수 있는 메소드가 있다.
var arr = new Array(9).fill()// 아무것도 안채워준다. 즉 undefined를 채운다.
console.log(arr)
[
undefined, undefined,
undefined, undefined,
undefined, undefined,
undefined, undefined,
undefined
]
이러면 무언가 값을 핳당해 줄 수 있겠다.
var arr = new Array(9).fill().map((el, i) => i + 1);
console.log( [1,2,3,4,5,6,7,8,9]