예전에 지원해놓았던 펄어비스라는 회사의 필기시험을 보고오느라 포스팅이 늦어졌습니다. 퍼블리셔 직무였음에도 준비를 크게 하지않아 매우 어렵게 느껴졌습니다. 앞으로 코딩테스트도 준비하고 싶어 백준에서 문제를 풀고싶은데 자바스크립트로 할지 파이썬이나 C++을 공부해서 할지 고민중입니다.
함수
함수는, 특정 코드를 하나의 명령으로 실행 할 수 있게 해주는 기능이다.
예를 들어서, 우리가 특정 값들의 합을 구하고 싶을 때는 다음과 같이 코드를 작성한다.
function add(a,b) {
return a + b;
}
const sum = add(1,2);
console.log(sum);
결과는 3이 된다.
함수를 만들 때는 function 키워드를 사용하며, 함수에서 어떤 값을 받아올지 정해주는데 이를 파라미터(매개변수)라고 한다.
함수 내부에서 return 키워드를 사용하여 함수의 결과물을 지정 할 수 있다.
추가적으로 return 을 하게 되면 함수가 끝난다. return 아래 다른 코드가 작성된다면 코드는 호출이 안된다.
Hello, name!
function hello(name) {
console.log('Hello, ' + name + '!');
}
hello('frontjsw');
결과로는 "Hello, frontjsw!"가 출력된다.
console.log 를 하게 될 때 우리는 문자열을 조합하기 위해서 + 연산자를 사용했다. 이렇게 문자열을 조합 할 때 + 를 사용해도 큰 문제는 없지만, 더욱 편하게 조합을 하는 방법이 있다.
바로, ES6 의 템플릿 리터럴 (Template Literal)이라는 문법을 사용하는 것 이다.
예시
function hello(name) {
console.log(`Hello, ${name}!`);
}
hello('frontjsw');
결과는 위 와 동일하게 출력된다.
화살표 함수
함수를 선언하는 방식 중 또 다른 방법은 화살표 함수 문법을 사용 하는 것이다.
const add = (a,b) => {
return a + b;
}
console.log(add(1,2));
function 키워드 대신에 => 문자를 사용해서 함수를 구현 했는데, 화살표의 좌측에는 함수의 파라미터, 화살표의 우측에는 코드 블록이 들어온다.
그런데, 만약에 위와 같이 코드 블록 내부에서 바로 return 하는 경우는 다음과 같이 줄여서 쓸 수도 있다.
const add = (a,b) => a + b;
console.log(add(1,2));