loading
본문 바로가기
Language/JavaScript

[Js] 05. 데이터 etc

by NeuLyeo 2024. 10. 14.

[Js] 05. 데이터 etc

 

 

 

 

📚 Table of Contents

     

     

     

     

    01. 동등, 일치 연산자

    동등 연산자

    동등 연산자 ==는 두 값이 같으면 true를 반환합니다. 그러나, 이 연산자는 타입을 검사하지 않습니다.

    예를 들어, 숫자 5와 문자열 "5"를 비교하면 true를 반환합니다.

    console.log(5 == "5"); // true



    일치 연산자

    일치 연산자 ===는 동등 연산자와 유사하지만, 타입도 검사합니다.

    따라서, 숫자 5와 문자열 "5"를 비교하면 false를 반환합니다.

    console.log(5 === "5"); // false

    따라서, 정확한 비교를 위해 일치 연산자 ===를 사용하는 것이 좋습니다.



    02. 참과 거짓(Truthy & Falsy)

    대부분의 데이터들은 Truthy 에 속합니다.

    때문에 Falsy에 속하는 데이터들을 외우면 좋습니다.

    JS에서 Falsy에 속하는 데이터들은 다음과 같습니다.

    • false
    • 0
    • -0 (음수)
    • 0n (big int)
    • "" (빈 문자 데이터)
    • null
    • undefined
    • NaN




    03. 데이터 타입 확인

    typeof

    typeof는 데이터 타입을 확인하는 연산자입니다. 변수나 값의 데이터 타입을 반환합니다.

    하지만 null 과 배열, 객체 데이터를 정확히 구분할 수 없습니다.

    console.log(typeof 'Hello' === 'string')
    
    console.log(typeof 123 == 'number')
    
    console.log(typeof undefined === 'undefined')
    
    console.log(typeof null === 'object')
    
    console.log(typeof [] === 'object')
    
    console.log(typeof {} === 'object')

     




    .constructor

    데이터의 생성자 함수를 반환합니다.
    생성자 함수는 데이터가 생성될 때 사용된 함수를 반환합니다.

    예를 들어, 숫자 데이터의 생성자 함수는 Number() 함수입니다.
    문자 데이터의 생성자 함수는 String() 함수입니다.
    배열 데이터의 생성자 함수는 Array() 함수입니다.
    객체 데이터의 생성자 함수는 Object() 함수입니다.

    console.log([].constructor === Array)
    
    console.log({}.constructor === Object)
    
    console.log(null.constructor) //* 오류발생



    함수로 데이터 확인

    function checkType(data) {
      return Object.prototype.toString.call(data).slice(8, -1)
    }
    
    console.log(checkType(null)) //* 'Null'
    console.log(checkType([])) //* 'Array'
    console.log(checkType({})) //* 'Object'