원시 데이터 타입
원시 데이터 타입(기본) VS 객체 데이터 타입(참조)
원시 데이터 타입은 숫자 ,문자,불리언(true/false),null,undefiend (primitive type)이라고 합니다.
let str = 'coding';
console.log(str.length); // 6
console.log(str.charAt(0));
이상한게 있습니다. 문자열은 원시 데이터 타입인데
srt.charAt(0)은 객체 처럼 보입니다. 정식 명칭은 Object access Operator
객체 접근 연산자입니다.
srt. 여기에 점은 객체입니다. srt은 객체입니다. 좀 혼란스러울수 있습니다. 문자열을 제어하기 위해서
몇번째 자리인가 또는 몇개의 글자가 있는가 어떠한 작업을 하기 위해서는 문자열을 객체데이터로 작업을 해야
수월합니다.
let str = 'coding'; 이것이 마치 str=new String('coding') 이라고 생각하시면 됩니다.
console.log(str.length); // 6
console.log(str.charAt(0)); // "C"
밑에 메소드를 사용 할수 있습니다.
다음 예를 보자면
let str = 'coding';
str.prop = 'everybody'; 여기까지는 객체 데이터 타입으로 받아줍니다.
console.log(str.prop); // undefined 하지만 여기서는 객체를 제거 하거 원래 원시데이터로
변경되었기 때문에 undefined가 됩니다.
문자열처럼 객체 지향적으로 다룰수 있도록 하는 것을 레퍼 객체라고합니다.
래퍼 객체로는 숫자,문자열,블리언
하지만 null mundefined는 래퍼객체가 아닙니다.
이 글은 생활코딩을 보고 포스팅 하였습니다.