티스토리 뷰

자바스크립트의 literal(리터럴)은 String, Number, Boolean 과 같은 특정한 형식 값을 나타낸다.

아래 예시에서 리터럴은 1(숫자), 12.345(숫자), 1(문자), 1(문자), true(불리언), [1,2,3,4,](배열)이다.

var num1 = 1 ; //숫자
var num2 = 12.345; // 소수점 
var str1 = "1"; // 문자
var str2 = '1'; // 문자
var isOk = true; // 불리언
var array1 = [1,2,3,4,]; //배열

 

 

자바스크립트의 Primitive(원시)타입은 5가지로 String,Number, Boolean, null, undefined 이다. 여기서 Primitive(원시)를 간단하게 설명하면 new로 생성 하지 않는 변수를 말한다.

var num1 = Number(1) ; //원시 숫자
var num2 = Number(12.345); //원시 소수점 
var str1 = String("1"); // 윈시 문자
var str2 = String('1'); // 윈시 문자
var isOk = Boolean(true); // 원시 불리언

자바 스크립트의 객체를 인스턴트화 하려면 new 사용한다.

var num1 = new Number(1) ; //Number 객체 인스턴스
var num2 = new Number(12.345); //Number 객체 인스턴스
var str1 = new String("1"); // String 객체 인스턴스
var str2 = new String('1'); // String 객체 인스턴스
var isOk = new Boolean(true); // Boolean 객체 인스턴스

 

원시와 객체의 차이를 알아보기 위해선 '===' 일치 연산자를 통해 비교하면 된다.
일치 연산자를 잠시 설명하자면 아래 예시에서 '==' 동등 연산자는 값을 비교하기 때문에 true를 출력하고 '===' 일치 연산자는 문자열 리터럴과 숫자 리터럴을 비교하였기때문에 false를 출력합니다.

var num = 0113;
var str = '0113';

console.log(num == str); // true
console.log(num === str); // false

다시 원시와 객체의 차이점을 알아보기위해 아래 코드를 실행하면 

var str1 = String("str");
var str2 = new String("str");
                      
if(str1 === "str")
{
    console.log('str1 & str equal');
}

if(str2 === "str")
{
    console.log('str2 & str equal');
}

if(str1 === str2)
{
    console.log('str1 & str2 equal');
}

str1 & str equal 출력값이 나온다. 이는 원시 값과 문열 리터럴 "str"이 일치 한다는 것이다. 

아래 예시는 객체의 데이터 유형이 다른것을 알 수 있다.

숫자, 불리언, 문자열은 객체를 인스턴스해서 생성하지말고 사용하자. 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/12   »
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
글 보관함