티스토리 뷰

웹개발(프론트)

삼항연산자

수달찌 2021. 4. 5. 23:26

목차

     

     

    어우.. 저녁을 너무 많이먹어버렸따...

    삼항 연산자

    삼항 연산자는 if else다르게 표현한 코드이다.

    으음.. 예로 들어

    if( toggle == True)
      console.log("True!");
    else
      console.log("False!");

    toggle이 참이면 True를 출력하고

    거짓이면 False를 출력하는 이 if문은

    (toggle == true) ? (
      console.log("True!");
    ) : (
      console.log("False!");
    )

    이렇게 삼항 연산자로 변환 가능하다.

    코드

    import {useState} from 'react';
    
    export default  function App () {
      const [toggle, setToggle] = useState(false);
    
      function handleOnClick(){
        setToggle(!toggle);
      }
    
      return (
        <>
          <button onClick={handleOnClick}>On/Off</button>
          {toggle ?(
            <h1>Toggle On</h1>
          ):(
            <h1>Toggle Off</h1>
          )}
        </>
      );
    };

    풀이

    삼항 연산자는 render (태그 반환) 문에서 자주 쓰인다.

    if문은 못쓰는데 삼항 연산자는 가능하기 때문이다.

     

    can't use if/else inside react render method

    I am using React with Ant Design, but this is only a react issue. I have a code like this: { title: "Group", dataIndex: "group", key: "group", render: text => ( <a&...< p=""> </a&...<>

    stackoverflow.com

    import {useState} from 'react';
    
    export default  function App () {
      const [toggle, setToggle] = useState(false);
    
      function handleOnClick(){
        setToggle(!toggle);
      }
    
      return (
        <>
          <button onClick={handleOnClick}>On/Off</button>
          {toggle ?(
            <h1>Toggle On</h1>
          ):(
            <h1>Toggle Off</h1>
          )}
        </>
      );
    };

    해당 코드는

    toggle이 True이면 Toggle On이 랜더링 되게,

    toggle이 False이면 Toggle Off가 랜더링 되게

    삼항 연산자로 구성했다.

     

    지금은 그냥 이해하기 쉽게 저렇게 해놨는데,

    데이터 로딩 결과에 따라 다른 화면을 보이게 하는데도 자주 쓰인다.

    '웹개발(프론트)' 카테고리의 다른 글

    border-radius  (0) 2021.04.07
    spread(나열)  (0) 2021.04.06
    가상셀렉터로 icon 만들기  (0) 2021.03.30
    async / await  (0) 2021.03.29
    Promise  (0) 2021.03.28
    댓글
    최근에 올라온 글
    최근에 달린 댓글
    Total
    Today
    Yesterday
    링크
    «   2025/01   »
    1 2 3 4
    5 6 7 8 9 10 11
    12 13 14 15 16 17 18
    19 20 21 22 23 24 25
    26 27 28 29 30 31
    글 보관함