본문 바로가기

배운 것/js

[js] 삼항연산자

목표

: 삼항연산자를 사용해서 class "red" 를 갖고 있는 태그들은 red 라는 텍스트가 찍히게 해보자

 

 

html

<ul>
  <li>aaa</li>
  <li class="red">bbb</li>
  <li>ccc</li>
  <li class="blue">ddd</li>
  <li>eee</li>
  <li>eee</li>
  <li class="red">나나</li>
</ul>

 

css

  .red {color:red;}
  .blue {color:blue;}

 

js

    let li = document.querySelectorAll("li");
    
    li.forEach(function(item){
      // if(item.classList.contains("red")){
      //   item.innerHTML="red"
      // }
      item.classList.contains("red") ? item.innerHTML="red" : console.log("?")
    });

 

삼항연산자를 쓰면,

 

if( 조건문 ) { 조건문 결과 } else { 조건문 외의 결과 }

위 문법이 아래와 같이 바뀐다

 

(조건문) ?  조건문 결과 : 조건문 외의 결과

 

 

item.classList.contains("red") ? item.innerHTML="red" : console.log("?")

 

forEach 안에서 돌고 있는 각각의 li 들은 red 라는 클래스를 갖고 있을 시,

해당 li 태그 안에 "red" 라는 텍스트가 들어가고,

forEach 안에서 돌고 있는 각각의 li 들 중 red 라는 클래스를 갖고 있지 않은 나머지는

console.log("?") 를 찍게 된다

 

결과

 

 

 

'배운 것 > js' 카테고리의 다른 글

[js] 프로토타입 상속이 어떻게 작동하는가  (0) 2019.12.02
[js] arrow function 규칙  (0) 2019.11.09
[js] filter  (0) 2019.10.27
[js] promise 이해하기 + 객체  (0) 2019.10.24
[js] callback 함수 이해하기  (0) 2019.10.23