내일배움캠프/오늘 배운 내용
[TIL] 8일차 (호이스팅)
HJ::
2023. 5. 24. 20:34
'호이스팅'을 배우기 전과 후의 코드의 해석 차이는 다르다.
var b= 3;
// 여기서 var b;가 호이스팅 되고
// 그래서 b=3; 은 아래만 따로 나중에 읽힌다.
function b() {
}
// 함수 b()전체가 호이스팅 된다.
var sum= function(x,y){}
//이렇게 변수로 쓰여야 코드 혼란을 사전에 막을 수 있다.
// 그러므로 함수 표현식으로 함수를 표현해야 혼란을 막을 수 있다.
함수와 매서드는 같아보이지만
: 함수는 호출 주체가 없고 스스로 수행될 수 있다.
매서드는 누군가 실행시켜줘야 한다. 호출의 주체로는 . 과 []가 있다.
As-Is : 기존거
To-be: 이후 거
일반함수와 화살표 함수의 차이는: this binding의 여부이다.
function solution(absolutes, signs) {}
https://school.programmers.co.kr/learn/courses/30/lessons/76501?language=javascript
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
저 안에 absolutes 안에 절대값 배열이 들어가고 signs에는 +-를 boolean으로 표현한 배열이 들어있다.
두 배열을 조합하고 더한 값을 출력해주는 문제이다.
처음에는 어떻게 할지 난감했다.
근데 잠깐 생각하니 쉬운 문제였다. 이미 +인 숫자는 -로 변환해줄 필요가 없다.
그래서 false인 값만 forEach로 돌려서 (그 숫자)*= -1 해주고 정답 변수에 모두 더해주면 답이 나왔다.
배운점: forEach만 적고 엔터치면 vscode에서 자동으로 형식 만들어줘서 편리하다.