로직 구현 시 연산자 갯수를 잘못 기입하여 오류를 찾기 어려웠던 경험이 있었을 겁니다.
이번 포스팅에서는 JavaScript의 연산자 =, ==, === 에 대해 정리한 사항을 기록하고자 합니다.
1. 할당(대입) 연산자 (=)
변수의 값을 할당하는 연산자로 다른 프로그래밍 언어에서도 동일하게 사용하고 있습니다.
var a = 10;
var b = 20;
var c = 30;
var f = '20';
a += 10; // 20
b -= 10; // 10
c *= 10; // 50
f /= 5; // 4
2. 비교 연산자 (==, ===)
비교 연산자는 두 개의 피연산자의 값을 비교하여 불리언(True / False) 값을 반환합니다.
타입을 지정해주지 않는 자바스크립트 언어 특성으로 2개의 비교 연산자가 설계 되었습니다.
동등 비교 연산자 (==)
: 피연산자의 값을 비교하기 전에 형 변환(Type Coercion)를 수행합니다. (느슨한 비교)
var a = 3;
var b = '3';
let c = 3;
a == b // true
a == c // true
b == c // true
일치 비교 연산자(===)
: 피연산자의 타입 형 변환 과정을 수행하지 않고 값을 비교합니다. (엄격한 비교)
var a = 3;
var b = '3';
let c = 3;
a === b // false
a === c // true
b === c // false
유지보수 관점에서 JS는 타입을 지정하지 않기 때문에 동등 비교 연산자(==) 사용을 추천하지 않습니다.
프론트언어에서 정적 타입 문법을 추가한 TypeScript 사용도가 높아지는 이유 중 하나입니다.
레퍼런스
https://poiemaweb.com/js-operator
읽어주셔서 감사합니다.
반응형
최근댓글