1. 수학 표현식
JavaScript는 코드에 숫자 데이터타입
과 사칙연산같은 수학 표현식
을 사용하여 숫자를 계산할 수 있다.
2. 생소한 수학 표현식
1. ++ / - -
++
는 변수의 값에 1을 간단하게 더할 수 있게 해준다.
반대로 --
는 변수에서 1을 빼준다.
참고로 const를 사용하면 값을 재할당을 할수 없어 에러가 뜬다.
증감연산자를 사용하는경우 ++
/--
의 위치에따라 다르게 사용하기때문에 주의해야한다.
++를 하면 1이 붙어서 나올것같지만 실제로는 다른값이 나올수 있다.
1) number++
아래의 코드는 어떤 값이 나올까?
let a = 1;
let aPlus = a++;
나는 1과 2가 나올줄 알았는데, 답은 2와 1이였다.
이렇게 나온 이유는 대개 코드는 위에서부터 스캔하기도하지만 동시에 왼쪽에서 오른쪽으로 스캔하기도해서이다.let aPlus = a
를 먼저 처리
하고 그 뒤에 ++
를 하기때문에 aPlus에 a가 먼저 할당
되어버리고 ++가 적용이 되지 않기때문이다.
num++
를 사용할경우 선언된 변수를 사용하고 1씩 증가시키고 싶을때 사용하면 된다.
2) ++number
++num
은 변수를 1증가 시킨뒤 사용하고 싶을때 쓰면된다.
아래의 코드처럼 ++
를 앞에 적으면 같은 값이 나온다.
위의 코드를 풀어쓰면 아래와 같다.
let a = 1;
a++;
let aPlus = a;
3. 수학식 계산 순서
자바스크립트에서도 우리가 배운 수학과 같은 사칙연산의 순서를 따른다.()
안의 계산을 먼저해주거나 *
와/
기를 +
와-
보다 먼저해준다.
Assignment
index.js
에 작성 되어 있는mathExpression
함수의 결과 값이 22가 나오도록 수정해 주세요.
// Assignment - 다음 함수 안에 코드를 작성해 주세요.
function mathExpression() {
// 다음 코드의 값이 22가 되도록 수정해주세요.(문제)
let result = (5 + 6) _ 10 / 2 _ 2.5;// 내가 쓴 코드
11 _ (10 / (2 _ 2.5))
// 다음 코드는 수정하지 마세요!
return result;
}// 아래의 코드는 절대로 수정하거나 삭제하지 마세요.
module.exports = {mathExpression};
처음 공부했을때 제출한 답은
5+6= 11 이고 11 x 10은 110. 110 / 2 는 55고 55 x 2.5는 137.5
137.5 - 22 는 115.5니까
`let result = (5 + 6) * 10 / 2 * 2.5 -115.5`;
이렇게 썼었는데 부끄럽다 4개월전의 내가 이랬었구나..