JaveScript
JaveScript_TLI-6_[Truthy & Falsey, 삼항 연산자]
SanL
2023. 5. 13. 01:51
JavaScript
Truthy & Falsey
: 자바스크립트에는 boolean속성을 넣지 않아도 참과 거짓 속성을 반환하는 경우가 있음
이는, 자바스크립트가 자신만의 어떠한 특정한 기준으로 값을 참과 거짓으로 분류하는 것
(Truthy & Falsey는 조건문을 이용하거나 특정 조건으로 식을 실행할 때 유용함)
Truthy
let a = //[], 23(숫자),"0"(문자열),"false"(문자열),Infinity
//전부 True를 반환함
if(a){
console.log("True");
} else{
console.log("False");
}
Falsey
let b = //null,undefined,0,-0,"",NaN
//전부 Falsey를 반환
if(a){
console.log("True");
} else{
console.log("False");
}
삼항 연산자
- 형태
: 가장 처음 조건문을 적어주고 ?을 넣어줌 / 앞에가 조건문인 것을 알려주기 위해
이후 참 일때 수행할 식, 거짓일 때 수행할 식을 적으면된다.
let a =3;
if (a>=0){
console.log("양수");
} else {
console.log("음수");
}
//삼항 연산자
a >= 0 ? console.log("양수") : console.log("음수"); // "양수"
//기존의 5줄 코드를 한줄로 줄일 수 있음
//삼항 연산자의 참과 거짓을 값으로 받기
const num = a >= 0 ? "양수" : "음수";
console.log(num); // "양수"
//삼항 연산자를 truely , falsely로 받기
const result = a ? true : false;
console.log(result); // true 반환
//삼항연산자를 중첩해서 사용
let score = 40;
score >= 90
? console.log("A+")
: score >= 50
? console.log("B+")
: console.log("F");
//중첩 연산자는 가독성을 해치는 경향이 있기 때문에
//조건이 길어질 경우 if조건문을 사용하는게 좀 더 효율적 선택
if(score >= 90){
console.log("A+");
} else if(score >= 50){
console.log("B+");
} else{
console.log("F");
}