[Java Script]데이터 타입과 연산자 3 (기본 타입과 표준 메서드, 연산자)

2021. 7. 27. 14:54CSE/Java Script

1. 기본 타입과 표준 메서드

- 기본 타입은 객체가 아니다 => 어떻게 메서드를 호출할 수 있을까?

: 기본 타입의 값들에 대해서 객체 형태로 메서드를 호출할 경우, 객체로 변환된 다음 표준 메서드를 호출하게 된다

=> 이 후, 메서드 호출이 끝나면 기본 값으로 복귀한다

var num = 0.5

console.log(num.toExponential(1)); //5.0e-1
//toExponential() : 숫자를 지수 형태의 문자열로 변환, 인자로 소수점 아래 몇 번째 자리까지 표시할지 받는다

console.log("test".charAt(2)); //'s'

 

2. 연산자

- '+' 연산자 : 양쪽이 모두 숫자인 경우에만 더하기 연산이 수행되고, 나머지는 문자열 연결 연산이 이루어진다.

console.log(1+2); //3
console.log(1+'add'); //1add
console.log('add'+'1'); //add1

- typeof 연산자 : 피연산자의 타입을 문자열 형태로 리턴한다.

기본 타입 숫자 number
문자열 string
boolean값 boolean
null object
undefined undefined
참조타입 객체 object
배열 object
함수 function

- ==(동등) 연산자 : 타입이 다를 경우 타입 변환을 거친 다음 비교

- ===(일치) 연산자 : 타입이 다를 경우에 타입 변경없이 비교한다. (가급적이면 이걸 사용하자)

console.log(1=='1'); //true
console.log(1==='1'); //false

- !! 연산자 : 피연산자를 boolean값으로 변환한다. 객체는 값이 비어있어도 true로 변환된다.

console.log(!!0); //false
console.log(!!1); //true
console.log(!!'string'); //true
console.log(!!''); //false
console.log(!!true); //false
console.log(!!false); //true
console.log(!!null); //false
console.log(!!undefined); //false
console.log(!!{}); //true
console.log(!![1,2,3]); //true