뭐지
더해진 값을 반환한다.
더해지기 전의 값을 반환한다.
a += 1
= a = a+1
a -= 1
= a = a-1
❗ NaN는 아래 연산자들의 영향을 받지 않는다.
변수 == NaN을 입력하고 싶다면 isNaN(변수)으로 입력하자.
값이 같을 때 true
"1"== 1 👉 ⭕true
0 == false 👉 ⭕true
값과 타입이 같을 때 true
1 === 1 👉 ⭕true
"1" === 1 👉 ❌false
0 === false 👉 ❌false
값이 다를때 true
"1" != 2 👉 ⭕true
1 != false 👉 ⭕true
값과 타입이 다를때 true
"1" === 1 👉 ❌false
0 === false 👉 ❌false
1 === false 👉 ⭕true
> 클때 true
< 작을때 true
>= 크거나 같을 때 true
<= 작거나 같을 때 true
하나라도 참일 때 true
1 > 2 || 1 > 10 👉 ❌false
1 > 2 || 10 == 10 👉 ⭕true
let a= 1 || 0
과 같이 작성할 경우 a의 값은 1이 담긴다.
let b= "" || 0
과 같이 작성할 경우 a의 값은 ""이 담긴다.
OR 연산자는 왼쪽에서부터 true인 값을 찾아 값을 변수에 저장한다.
true인 값이 없다면 가장 오른쪽의 값이 담기게 된다.
모두 참일 때 true
1 > 2 && 1 > 10 👉 ❌false
1 > 2 && 10 == 10 👉 ❌false
10 > 2 && 10 == 10 👉 ⭕true
let a= 1 && 0
과 같이 작성할 경우 a의 값은 0이 담긴다.
let b= 1 && 3
과 같이 작성할 경우 a의 값은 3이 담긴다.
AND 연산자는 왼쪽에서부터 false인 값을 찾아 값을 변수에 저장한다.
false인 값이 없다면 가장 오른쪽의 값이 담기게 된다.
결과가 참이면 false 거짓이면 true
"1"== 1 👉 ❌false
10 > 2 && 10 == 10 👉 ❌false
숫자0, 빈 문자열 "", null, undefined, NaN = false
공백 " "을 포함한 나머지들 = true<
변수가 !와 함께 쓰이면 데이터 타입이 boolean으로 변환된다.(*암묵적 변환)
아무것도 입력하지 않았을 때의 변수값 = "" = false
입력했을 때의 변수값 = 입력한 값 = true
아무것도 입력하지 않았을 때 + !변수 = true
요약👉 if(!변수){실행문;} = 아무것도 입력하지 않았을 때 실행문 실행
NOT을 두번 작성하면 boolean형으로 작성된다.
표현식 ? 반환값1 : 반환값2 ;
let userName = "A";
let userAge = userName=="A" ? 30:20;
console.log(result);
👉 userAge = 30;
앞의 표현식이 true라면 userAge에 반환값 30을 출력하고
false라면 반환값 20를 출력한다.
let userAge2 = 25;
let userName2 = 20<userAge2 && userAge2<30 ? A: B;
console.log(result);
👉 userName2 = A;
❗ 20<userAge<30 과 같이 다중조건을 부합하고 싶을 때에는 &&로 조건 사이를 묶어주어야한다.
let num = prompt("숫자를 입력해주세요");
if(isNaN(Number(num)) || !num ){
alert("숫자를 입력하세요.")
}else if(num%2 != 0){
document.write("홀수입니다.")
}else{
document.write("짝수입니다.")
}
입력한 숫자가 홀수라면 "홀수입니다." 짝수라면 "짝수입니다."라는 문구를 출력한다.
숫자가 아니라면 "숫자를 입력하세요."라는 경고창이 뜬다.
if //만약에,
(isNaN(Number(num)) //= 함수 num을 숫자로 변환 했을 때 값이 NaN 이라면 *구문A
|| //= 또는
!num) //=값이 false 라면,
// (값이 false인 경우 = 숫자 0, 빈 문자열 "", null, undefined, NaN)
{ alert("숫자를 입력하세요.") //= "숫자를 입력하세요"라는 문구의 경고창을 띄운다.
}
else if //= 위 *구문A가 충족하지 않는다면, 만약에
(num%2 != 0) //= 함수 num을 2로 나눴을 때의 나머지가 0이 아니라면 *구문B
{ document.write("홀수입니다.") //= "홀수입니다." 라는 문구를 document에 작성한다.
}
else //= 위 *구문A와 *구문B가 충족하지 않는다면
{ document.write("짝수입니다.") //= "짝수입니다." 라는 문구를 document에 작성한다.
}