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
반응형