장염과 배열에 두 번 무너지다

장염과 배열에 두 번 무너지다

비전공자가 IT개발자로, 커리어전환기2

장염과 배열에 두번 무너지다.

이번주는 급 장염이 목요일 Live session에 참가를 못했다.
하나라도 더 배우고싶어 죽겠는데…
진짜 죽다가 살았다 화장실과 한발짝도 떨어질. 수. 가. 없었다.

다행히 live session은 런코에 동영상이 올라와서 보면서 공부중이다.
근데 배열 너무 어려운거 아님?
아래는 spilce인데 내가 도저히 이해가 안되서 집중적으로 공부해보았다.
w3school의 spilce 예제

splice를 공부해 보자면 아래와 같다

1
2
var arr = ["Banana", "Orange", "Apple", "Mango", "Kiwi"];
arr.splice(2, 2);
1
2
var arr = ["Banana", "Orange", "Apple", "Mango", "Kiwi"];
arr.splice(2);

아래 2가지가 이해가 되지 않는다. 두 식의 값은 같은데 왜 나는 변환하며 이해가 안가는건지…

1
2
3
4
5
6
7
function new1(array, n) {
let newArr = [];
for (let i = n + 1; i < array.length; i++) {
newArr.push(array[i]);
}
return newArr;
}
1
2
3
function new2(array, n) {
return array.splice(n+1);
}




TWIL

  1. array.push 쓸 때, return 쓰면 안됨.

push의 return 값이 항상 array의 length값을 가져다 줌. 띠용.

EX )

1
2
3
4
5
function ans(array, value){
array.push(valus);
}
let test = [1,2] ;
ans[test, 3] // ans = [1,2,3]

위의 식은 ok이지만 여기서 아래처럼 return을 쓰면

1
2
3
4
5
function ans(array, value){
return array.push(valus);
}
let test = [1,2] ;
ans[test, 3] // ans = 3 (원래는 1,2,3을 기대했지만 return은 length인 3의 값을 가져왔음)
  1. 중요한 문법 순서 : for반복문 > filter, map, reduce, foreach는 필수