Javascript

(심층)자바스크립트다시 시작하는 자바스크립트 - 형 변환, 선언

min' 2023. 3. 16. 00:57
728x90
반응형

 

헷갈리는 것들만 따로 정리할 예정.

deep dive 책을 함께 공부함.

 

 

 

10. 자바스크립트 형 변환 / 선언

 

10-1) 숫자, 불리언을 문자열로 형 변환

 

1) 래퍼 객체 .toString()
=>Object.prototype.toString method
=> 원시값이지만 객체처럼 함수를 사용 가능. (. 뒤에)

2) String()
=> String 생성자 함수를 new 없이 활용

3) 숫자(불리언) + ""
=> "" + 숫자(불리언)도 가능


10-2) 문자열, 불리언을 숫자로 형 변환

 

1) parseInt(정수 문자열) : 소수가 없는 정수는 parseInt()로 변환.
    parseFloat(실수 문자열) : 소수가 있는 실수는 parseFloat()로 변환.
=> "456"처럼 숫자로 된 문자열만 반환 가능.
=> NaN, Infinity는 parseInt(), parseFloat() 둘 다 적용 가능.
=> 불리언에는 적용 불가!

parseInt("11"); // 11
parseInt("11.55"); // 11.55

parseInt("NaN"); // NaN
parseFloat("NaN"); // NaN

parseInt("Infinity"); // Infinity
parseFloat("Infinity"); // Infinity

parseInt("Hello"); // NaN

2) Number(문자열, 불리언);
=> Number 생성자 함수를 new 없이 활용

3) + 문자열(불리언)
=> 문자열(불리언) 앞에 + 연산자를 붙여주면 숫자로 형 변환

4) 문자열(불리언) * 1
=> 문자열에 * 연산을 하면 숫자로 형 변환
=> "11" * 1; // 11
=> false * 1; // 0

 

10-3) 숫자, 문자열, 객체를 불리언 타입으로 변환

1) Boolean(숫자, 문자열, 객체, undefined, null)
=> Boolean() 생성자 함수를 new 연산자 없이 호출하여 불리언 타입으로 변환

Boolean(0); // false
Boolean(1); // true
Boolean(-11.55); // true

Boolean(NaN); // false

Boolean(Infinity); // true
Boolean(-Infinity); // true

Boolean(""); // false
Boolean(" "); // true
Boolean("hello"); // true
Boolean("true"); // true
Boolean("false"); // false

Boolean({}); // true
Boolean([]); // true

Boolean(undefined); // false
Boolean(null); // false

2) !!(숫자, 문자열, 객체, undefined, null)
=> 부정 논리연산자(!)를 두 번 연달아 사용하여 불리언 타입으로 변환

!!(0); // false
!!(1); // true
!!(-11.55); // true

!!(NaN); // false

!!(Infinity); // true
!!(-Infinite); // true

!!(""); // false
!!(" "); // true

!!("hello"); // true
!!("true"); // true
!!("false"); // true

!!({}); // true
!!([]); // true

!!(undefined); // false
!!(null); // flase

 

10-4) new 생성자를 사용한 값 선언. type은 객체. 객체가 새로 생성되며 그 안에서 type 결정

1) new String("123"); // [ String : "123"]
2) new Number(123); // [ Number : 123]
3) new Boolean(1); // [ Boolean : true]

 

728x90
반응형