
+ ,- , * , / , %, ** 이 있다.
+ 연산자는 숫자를 더할때 뿐만 아니라 문자열간의 연결을 도우며 숫자와 문자열이 결합될때 문자열로 변환해주는 역할을 한다.
let text = '두개의' + '문자를';
console.log(text); // 두개의문자를
console.log(2 + 2 + '1' ); // '221'이 아니라 '41'
그외 나머지 연산자들은 숫자형과 문자형이 만났을 때 숫자형으로 변환시켜준다.
+(양) , -(음) ,!(부정) 이 있다.
숫자가 아닌 타입을 숫자형으로 변환시켜준다.
console.log( +"3" + +"2" ); // 5
console.log(+false); // 0
console.log(+’hi’); // NaN
console.log(+undefined) // NaN
boolean의 출력값이 true or false를 반환한다.
boolean형이 아닌 타입을 boolean형으로 변환시켜준다.
console.log(!false); // true
console.log(!1); // false
‘ = ‘
let a= 1;
a= a+2;
//a+=2의 축약버전
‘++’ , ‘--’
필요한 연산을 하고 그 뒤 값을 증가시킨다.
let a= 0;
let b =a++; // a의 값이 먼저 b로 들어가고 그 뒤에 a가 증가
console.log(b); //0
console.lof(a); // 1
값을 먼저 증가시키고 필요한 연산을 한다.
let a= 0;
let b =--a; // a값을 1감소시키고 b에 값에 대입한다.
console.log(b); //-1
console.log(a); //-1
==, !=
좌항과 우항의 값(실질적으로 가지고 있는 정보)이 같으면 true , 다르다면 false
console.log(false==0); // true
// false는 비교시 자동으로 숫자형으로 변환된다.
console.log(2=='2'); // true
동등 연산자는 피연산자가 null이거나 undefined일때 형변환 하지 않는다.
단 undefined와 null을 비교하는 경우에만 true를 반환console.log(null==0); // false console.log(undefine==null); // true
=== , !==
일치 연산자는 엄격한(strict) 동등 연산자. 타입의 동등 여부까지 검사한다.
console.log( 0 === false ); // false, 피연산자의 형이 다르기 때문.