IT/Javascript

(5-1) 원시값의 메서드

KeepGooing 2020. 7. 17. 22:44
반응형


다음의 글을 공부하고 재 정리하면서 코드로 적어본 것들
https://ko.javascript.info/primitives-methods

 

원시값의 메서드

 

ko.javascript.info

 

 

 

// 원시 래퍼 객체를 통해 원시값이 메서드나 프로퍼티에 접근 가능하게 한다.

// String, Number, Boolean, Symbol

 

let str = "Hello";

console.log('/////////////////////////////////');

console.logstr.toUpperCase() );

console.log('----------------------------------');

console.log('실행 프로세스');

console.log('/////////////////////////////////');



let explain = `1. 문자열 str은 원시값이므로 원시값의 프로퍼티(toUpperCase)에 접근하는 순간

특별한 객체(래퍼 객체)가 만들어진다.

이 객체는 문자열의 값을 알고 toUpperCase()와 같은 유용한 메서드를 갖고있다.

 

2. 메서드가 실행되고, 새로운 문자열이 반환된다. console에 문자열이 출력된다.console

 

3. 특별한 객체는 사라지고 원시값 str만 남는다.`;

 

console.log(explain);

 

let n = 1.23456;

 

console.log(n.toFixed(2));




`new Number(1)이나 new Boolean(false)와 같은 문법을 사용해 래퍼 객체를 직접 만들 수 있으나

비추한다.

몇몇 상황에서 혼동을 불러일으킨다.`

 

console.logtypeof 0 ); // number

 

console.logtypeof new Number(0) ); // object

 

console.log(new Number(0)); // [Number: 0]



`객체는 논리 평가 시 항상 참을 반환하기 떄문이다.Number`

 

let zero = new Number(0); 

console.log(zero); // [Number: 0]

console.log(zero.toString());

 

if (zero) {

    console.log('그런데 여러분은 zero가 참이라는 것에 동의하시나요?');

}



`그러나 new를 붙이지 않고 String/ Number/ Boolean을 사용하는 것은 괜찮다. 상식에 맞게 인수를 원하는 형의 원시값(문자열,숫자,불린값)으로 바꿔준다.`

let num = Number("123"); //문자열을 숫자로 바꿔준다.

 

console.log(num);

 

`null/undefined는 메서드가 없다.`

 

// console.log(null.test); // TypeError: Cannot read property 'test' of null

 

반응형