ABOUT ME

jacey.park.dev@gmail.com \n 5년차 프론트엔드 개발자

Today
-
Yesterday
-
Total
-
  • [JS] 간단한 Javascript 문제
    Dev/JS 2019. 8. 28. 22:22

    Facebook Javascript 커뮤니티에 다음과 같은 문제가 올라왔습니다!

    이 그룹에는 Javscript에 대한 흥미로운 글이 많으니 가입하시는 것을 추천드립니당~

    const adverb = "Just"
    name = 'Javascript'
    
    const adverb_result = delete adverb
    const name_result = delete name
    
    console.log(adverb_result) // ?
    console.log(name_result) // ?

    정답은 아래와 같습니다!

    console.log(adverb_result) // false
    console.log(name_result) // true

    delete 연산자의 특성을 알면 쉬운 문제인데요, delete 연산자는 객체의 프로퍼티(속성) 을 지우는 기능을 가진 연산자 입니다.
    그리하여 delete 연산을 통해 성공적으로 프로퍼티가 지워졌을 경우에 true, 삭제할 수 없는 경우 false 를 반환합니다.
    하지만 존재하지 않는 프로퍼티를 삭제할 때에도 true가 반환된다는 특징이 있습니다.

    아무튼! 위에서 adverb_resultfalse가 나오는 이유는 프로퍼티가 아닌 변수를 지우려고 하여 false가 반환되는 것이고,
    키워드를 사용하지 않은 name_resultglobal 객체의 프로퍼티로 들어가는 것이므로 true가 반환되는 것 입니다.

    존재하지 않는 프로퍼티를 삭제할 때에도 true가 반환된다는 점이 흥미로운 delete 연산자네요.
    그럼 이만 !

    'Dev > JS' 카테고리의 다른 글

    [JS] Node.js v14의 새로운 JS Feature!  (0) 2020.05.13
    [JS] useEffect에 대한 짧은 가이드  (0) 2019.08.28
    [JS]Shallow Compare  (0) 2018.07.03
    [React.js]Derived State를 언제쓸까?  (0) 2018.07.02
    [JS] React.js JSX 없이 React 사용하기  (1) 2018.06.03

    댓글

Designed by Tistory.