자바스크립트

[JavaScript] 프로그래머스 두 수의 합

코딩하는둥이 2023. 5. 14. 22:11

 

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

문제 설명

정수 num1과 num2가 주어질 때, num1과 num2의 합을 return하도록 soltuion 함수를 완성해주세요

 

입출력 예

num1 num2 result
2 3 5
100 2 102

 

코드 

const solution = (num1, num2) => num1 + num2

 

공부

삼항연산자

(조건) ? value1 :value2

 => 조건이 참인 경우 물음표 바로 다음에 있는 value1이 실행되며, 거짓이면 value2가 실행됩니다.

let a = 2;
let b = 1;

const value = (a > b) ? true : false;

console.log(value) // true

 

화살표 함수(arrow function)

 : 함수 표현식보다 단순하고 간결한 문법으로 함수를 만들 수 있습니다.

cosnt A = () => {}

let sum = (a, b) => {
	return a + b;
}

const sum = (a, b) => a + b;

 

매개변수가 없는 경우 

 

() => {...}

 

매개변수가 한 개인 경우, 소괄호 생략할 수 있습니다.

x => {...}

매개변수가 여러개인 경우, 소괄호 생략 할 수 없습니다.

(x , y) => {...}

코드가 한 줄이고 return문 밖에 없는 경우 중광호와 return 생략가능합니다.

x => x * x

객체로 리터럴을 반환 시 소괄호로 감싸야합니다. 

() =>({a,b})

 

 

주의할 점

1) this가 존재하지 않습니다. 

var name = "kkami";

let cat = {
  name: "Doongi",
  MaAh: () => {
    console.log(this.name); 
  }
};

cat.MaAh(); // kkami

2) 인수들을 담고 있는 유사 배열인 arguments가 없습니다.

let number = () => {console.log(number);}

number(1, 2, 3); //Error

 * 나머지 매개변수 사용시 인수들을 배열 받을 수 있습니다.

let number = (...args) => {console.log(args);}
number(1, 2, 3); // [1, 2, 3]

 

3) 생성자 함수가 없습니다. 

let Cat = (name) => {  this.name = name;}

let cat = new Cat("Doongi"); // TypeError: User is not a constructor