Archive

JS Day 2 삼항,논리,! 연산자

|

JS Day 2 삼항, 논리, ! 연산자


  1. 삼항연산자의 연결

    let age = prompt("나이 입력");
    let msg =
      age < 20 ? "청소년" : age < 30 ? "청년" : age < 65 ? "성인" : "경로우대";
    
  2. 논리연산자

    • || OR 연산자
    • true가 없으면 마지막 값을 반환
    alert(undefined || null || 0 || "" || "안녕?"); //output : '안녕?' 출력
    alert(undefined || null || 0 || "" || false); //output : false 출력
    
    • Short-Circuit : true가 나오면 뒤에 연산 안하고 넘어간다 (성능 향상에 유용)
    alert(true || "안녕?"); //output : 'true' 출력
    alert(false || "안녕?"); //output : '안녕?' 출력
    
    • 첫번째 true 값을 반환
    function andEx(number) {
        const a = number || 3;
        console.log(a);
    }
    andEx(1); //1 출력, 매개변수 1이 true이므로 a에 number 대입
    andEx(0); //3 출력, falsy한 값을 매개로 주면 number는 false가 되어 안녕이 출력된다
    andEx(); //3 출력, number는 undefined가 되어 false가 되고 안녕이 출력된다
    
    function andEx(number = 3){...} //ES6부터 매개에 디폴트 깂을 할당하면 같은 효과!!★
    
    • && AND 연산자

    • 모두 true인 경우 마지막 값 반환

    alert(3 && 4 && 5); //5 출력
    
    • 첫번째 false 값을 반환
    alert(3 && 4 && 0); //0 출력
    alert(0 && 4 && ""); //0 출력
    
    • 우선순위 && > ||
    alert((1 && 0) || ("" && 4)); //'' 출력, (1 && 0)과 ('' && 4) 실행 후 (0 || '') 실행
    
  3. ! not 연산자

    • !! 두개 붙여서 쓰면 boolean() 과 같은 기능
    alert(!!3); //true 출력
    alert(!!0); //false 출력
    

참고 자료


JAVASCRIPT.INFO