#2 Primitive Types
📋 Primitive Types(원시 자료형)
기초
개체는 속성의 집합입니다. 속성은 개체 또는 기본 요소를 참조 할 수 있습니다. 프리미티브는 값이며 속성이 없습니다.
밑 5개의 기본 유형 이외 것들은 객체이다.
-
undefined
-
null
-
symbol
해당 객체에 의해 래핑될 수 있음
- boolean
- string
- number
- NaN (Not a Number)
이 6가지의 원시 타입들에 더해 ECMAScript 표준은 Object를 정의했습니다. Object는 간단히 하자면 키-값 저장소입니다.
const object = {
key: "value"
}
그래서 요약하자면, Primitive Type이 아닌 것은 Object입니다.
그리고 Object라는 개념은 함수들과 배열들도 포함하죠
typeof true; //"boolean"
typeof Boolean(true); //"boolean"
typeof new Boolean(true); //"object"
typeof (new Boolean(true)).valueOf(); //"boolean"
typeof "abc"; //"string"
typeof String("abc"); //"string"
typeof new String("abc"); //"object"
typeof (new String("abc")).valueOf(); //"string"
typeof 123; //"number"
typeof Number(123); //"number"
typeof new Number(123); //"object"
typeof (new Number(123)).valueOf(); //"number"
let hello;
hello // undefined (정의하지 않음)
hello = null; // null ==> null이라는 값을 가짐
📋 primitive에 속성이 없는 경우 "abc".length값 반환 이유
JavaScript는 프리미티브와 객체 사이를 쉽게 강제하기 때문이며 이 경우 속성 길이에 액세스하기 위해 문자열 값이 문자열 개체로 강제 변환 됩니다.
즉, 프리미티브는 각각의 객체 생성자가 정의한 모든 속성 (메서드 포함)에 액세스 할 수 있습니다.
String.prototype.returnMe= function() {
return this;
}
var a = "abc";
var b = a.returnMe();
a; //"abc"
typeof a; //"string" (still a primitive)
b; //"abc"
typeof b; //"object"
++ 설명 해주는 곳
Author And Source
이 문제에 관하여(#2 Primitive Types), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@wjdghks963/2-Primitive-Types저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)