연산자(Operator)는 하나 이상의 표현식을 대상으로 산술, 할당, 비교, 논리, 타입, 지수 연산 등을 수행해 하나의 값을 만든다.
💡 이항 산술 연산자
let a=2;
let b=5;
console.log(a+b); // 7
console.log(a-b); // -3
console.log(a*b); // 10
console.log(a/b); // 0.4
console.log(a%b); // 1
console.log(a**b) // 32
💡 단항 산술 연산자
let a=1;
x++; // x = x + 1;
console.log(x); // 2
x--; // x = x - 1;
console.log(x); // 1
✔️ 피연산자의 값을 변경하는 암묵적 할당이 이뤄진다.
let a=2;
a += 1 // a = a + 1
console.log(a) // 3
a -= 1 // a = a - 1
console.log(a) // 2
✔️ 우항의 피연산자의 평가 결과를 변수에 할당하여 변수의 값을 변화시킨다.
💡 대소 비교 연산자
let a=2;
let b=5;
console.log(a<=b) // True
console.log(a>=b) // False
✔️ 좌항과 우항 값을 비교하여 true / false 값으로 나타낸다.
💡 동등 / 일치 비교 연산자
const x = 1 === 123
const y = 'AB' === 'ABC'
const z = false
console.log(x) // false
console.log(y) // false
console.log(z) // false
== != > 내용의 동등 여부
=== !== > 자료형까지의 일치 여부
console.log('&&: ', a && c) // &&: false
console.log('||: ' a || b || c) // ||: false
console.log('!: '!a) // !: true
&& > And
| | > Or
! > not
console.log(typeof 1.23) // number
console.log(typeof undefined) // undefined
console.log(typeof null) // object
console.log(typeof {}) // object
console.log(typeof []) // object
✔️ null, object, array는 typeof으로 확인해보면 object로 조회된다.
💡 전개 연산자 사용 예시
const fruits = ['Apple','Banana','Cherry']
console.log(fruits) // ['Apple','Banana','Cherry']
console.log(...fruits) // Apple Banana Cherry
function toObject(a, b, c) {
return {
a: a,
b: b,
c: c
}
}
console.log(toObject(fruits[0], fruits[1], fruits[2])) // {a:'Apple', b:'Banana', c:'Cherry'}
console.log(toObject(...fruits)) // {a:'Apple', b:'Banana', c:'Cherry'}
✔️ 전개 연산자 … 을 붙여서 각각의 아이템을 차례대로 출력.
💡 전개 연산자 사용 예시
const fruits = ['Apple','Banana','Cherry','Orange']
function toObject(a,b, ...c) {
return {
a: a,
b: b,
c: c
}
}
console.log(toObject(...fruits)) // {a:'Apple', b:'Banana', c:['Cherry', 'Orange']}
✔️ 매개변수에 전개 연산자를 사용할 경우, rest parameter 로 사용 가능.
나머지 값들은 배열 형태로 마지막 매개변수에 들어감.
let isShow = true;
console.log(isShow? 'Show!':'Hide!') // Show!
✔️ 조건 ? 참 : 거짓