연산자(+, -, *, /, %)
1. 더하기 연산자(+)
console.log(1 + 1); // 출력: 2
console.log(1 + "1"); // 출력: 11
console.log(typeof (1 + "1")); // 출력: string
// 더하기 연산자에선 형변환이 string 우선이므로 데이터 타입이 number가 아닌 string
console.log(1 - "2"); // 출력: -1
// 빼기 연산자에선 형변환이 number 우선이므로 데이터 타입이 number
console.log(1 -2); // 출력: -1
console.log(2 3); // 출력: 6
console.log("2" 3); // 출력 6
//곱하기 연산자에선 형변환이 number 우선이므로 데이터 타입이 number
console.log(2 / 4); // 출력: 0.5
console.log(2 / "4"); // 출력: 0.5
// 나누기 연산자에선 형변환이 number 우선이므로 데이터 타입이 number
console.log(5 / 2); // 출력: 2.5 나누기 연산자는 실제로 그 값을 나눈다.
console.log(5 % 2); // 출력: 1 5에서 2를 나누고 남은 값이 나온다.
6-1. 등호 연산자(=)
let x = 10;
console.log(x); // 출력: 10
6-2. 더하기 등호 연산자(+=)
let x = 10;
x += 5;
// x = x + 5 와 같은 의미이다.
console.log(x); // 출력: 15
6-3. 빼기 등호 연산자(-=)
let x = 10;
x -= 5;
// x = x - 5 와 같은 의미이다.
console.log(x); // 출력: 10
6-4. 곱하기 등호 연산자(*=)
let a = 10;
a (별표)= 2;
// a = a (별표) 2 와 같은 의미이다.
// (별표)는 Shift+8을 입력해서 나오는 곱하기 기호를 말한다. 벨로그에선 코드창에 이 입력이 안되는 것 같다.
console.log(a); // 출력: 20
7-1. 일치 연산자(===) 등호가 3개 들어간다.
연산자 양 옆에 있는 내용이 값과 타입까지 같다면 true
console.log(2 === 2); // 출력: true
console.log("2" === 2); // 출력: false
7-2. 불일치 연산자(!==)
값과 타입까지 일치하면 false를 반환하는 연산자 (일치연산자===의 반대 개념)
console.log(2 !== 2); // 출력: false
console.log("2" !== 2); // 출력: true
7-3. 작다 연산자(<), 작거나 같다 연산자(<=)
console.log(2 < 3); // 출력: true
console.log(2 <= 3); // 출력: true
console.log(3 <= 3); // 출력: true
console.log(4 <= 3); // 출력: false
// 크다 (>), 크거나 같다(>=)도 위와 같은 방식으로 사용한다
7-4. 논리 연산자
7-4-1. 논리곱 연산자. 두 값이 모두 true일때 true
console.log(true && true); // 출력: true
console.log(true && false); // 출력: false
console.log(false && true); // 출력: false
console.log(false && false); // 출력: false
7-4-2. 논리합 연산자. 두 값 중 하나라도 true라면 true
console.log(true || true); // 출력: true
console.log(true || false); // 출력: true
console.log(false || true); // 출력: true
console.log(false || false); // 출력: false
7-4-3. 논리부정 연산자. 값을 반대로 바꾼다.
console.log(!true); // 출력: false
let b = true;
console.log(!b); // 출력: false
// 조건에 따라 값을 선택한다.
ex)
let c = 10;
let result = (c > 5) ? "크다" : "작다";
// (c > 5)와 "크다", "작다" 이런 식으로 3개의 항으로 나누어져 있기 때문에 3항 연산자이다.
// (c > 5)의 위치에 할당된 값이 조건식이고 이 조건이 참이면 "크다"의 위칭에 지정된 값이 출력되며, 거짓이면 "작다"의 위치에 지정된 값이 출력된다.
console.log(result); // 출력: 크다
let d = 20;
let result1 = (d < 10) ? "작다" : "크다";
console.log(result1); // 출력: 크다.
console.log(typeof "5"); // 출력: string