// 산술
console.log(1 + 2) // 3
console.log(5 - 7) // -2
console.log(3 * 4) // 12
console.log(10 / 2) // 5
console.log(7 % 5) // 나머지 연산자 (값 2)
function isEven(num) {
return num % 2 === 0
}
console.log(isEven(3)) // false
console.log(isEven(12)) // true
산술연산자는 보기보다 간단하다. 값은 다음과 같다.
// 할당
let a = 3
// a = a + 2 // 5
a += 2 // 5
console.log(a)
중간에 보면 a = a + 2가 나외있는데 let 말고 const를 사용하면 재할당이 불가능 하므로 let 이라는 것을 써야 재할당이 가능하다. +뿐만 아니라 -, * 등등 쓸 수 있다.
// 증감 (증감, 감소 = 증감연산자)
let a = 3
console.log(a++) // 3++ ++4
console.log(a) // 4
consloe.log 안에 a 뒤에 ++를 넣어주면 감소연산자가 되고,
앞에다 ++ 넣어주면 증가 연산자가 된다 즉, a++ 을 하면 3 아래는 4 가 되고,
++a 면 둘 다 4가 나오는 값이 된다. +,-,* 도 다 똑같이 작용한다.
// 부정
console.log(!true) // ! 를 쓰면 부정 임으로 false 가 출력 됨.
console.log(!false) // true
console.log(!0) // 0은 거짓이므로 ! 를 쓰면 true가 출력 됨.
console.log(!!0) // 반대 반대 임으로 false
console.log(!!!0) // 반대 반대 반대 임으로 true
console.log(!null) // true
console.log(!undefined) // true
console.log(!NaN) // true
console.log(!'') // true
console.log(!{}) // false
console.log(![]) // flase
부정은 !를 쓰면 부벙이 됨. 두 번을 쓰면 부정에 부정이 됨.
// 비교
const a = 1
const b = 3
// 동등(형 변환!)
console.log(a == b) // false
// 부등(형 변환!)
console.log(a != b) // true
// 일치
console.log(a === b) // false
// 불일치
console.log(a !== b) // true
// 큼
console.log(a > b) // false
// 크거나 같음
console.log(a >= b) // false
// 작음
console.log(a < b) // true
// 작거나 같음
console.log(a <= b) // true
비교 연산자 인데, 동등과, 부등은 최대한 피해주는 것이 좋고, 일치와 불일치 또는 큼, 작음 같음을 쓰는 것이 낫다고 했다.
// 논리 연산자
// AND(그리고) 연산자
const a = true
const b = false
if (a && b) {
console.log('모두가 참!')
}
// OR(또는) 연산자
if (a || b) {
console.log('하나 이상이 참!')
}
AND는 모두가 참이여야 할 때만 출력이 되고,
OR은 하나 이상이 참이면 참으로 출력이 된다.
// 논리
// AND 연산자
console.log(true && false) // false
console.log(1 && 0) // 0
console.log(1 && 2 && 0) // 0
console.log(1 && 0 && 2) // 0
console.log(0 && 1 && 2) // 0
console.log('A' && 'B' && '') // 빈
console.log('A' && 'B' && 'C') // C
// OR 연산자
console.log(false || true) // true
console.log(0 || 1) // 1
console.log(false || 0 || {}) //
console.log(false || [] || null) // []
console.log(function() {} || undefined || '' ) // f () {}
console.log(false || 0 || NaN) // NaN
여기 값도 예시를 들었다. 결과 값도 다음과 같다. 이렇게 AND, OR을 배웠는데,
AND는 모두가 참이여야 값이 적용되고, OR은 하나만 참이여도 결과 값이 출력이 된다.