JavaScript
타입 변환,단축 평가
Hun-bot
2022. 4. 29. 02:22
728x90
반응형
명시적 타입 변환 | 타입 캐스팅
var a=5;
var n=a.toString()
생성자 함수 : String ,Number , Boolean을 사용하는 방법
toString , parseInt 등등
암묵적 타입 변환 | 타입 강제 변환
var a=5;
var x=5+'' //string으로 변환된다.
//문자열 타입으로 변환
어떤 타입이 앞에오고 + '' 이렇게 문자열 타입으로 암묵적 변환을 하게되면
대부분 문자열로 변환된다.
//숫자 타입으로 변환
1- '1' // 0
2 * '10' // 20
+ 단항 연산자 사용
+ '0' // 0
+ '2' // 2
+ 'hi' // NaN
+ true //1
+ false //0
+null //0
불리언 타입
거짓으로 평가되는 값만 알아두면 된다.
false / undefined / null / 0,-0 / Nan / ' ' (빈 문자열)
나머지는 모두 true로 평가된다.
단축평가
- 논리 연사의 결과를 결정하는 피연산자를 타입 변환하지 않고 그대로 반환하는 것을 말한다.
-> 표현식을 평가하는 도중 평가 결과가 확정나면 나머지 평가 과정을 생략하는 것.
단축평가 | 평가결과 |
true && anything | anything |
false && anything | false |
true || anything | true |
false || anything | anything |
(리액트를 공부하면서 자주 사용했다)
var hi=true;
var say='no';
hello=say && '반가워요'
log(hello) ==> '반가워요'
단축 평가의 유용한 패턴
*null , undefined 여부 확인
var hi=null
var say=hi.value // TypeError
var hi=null;
var say= hi && hi.value //null
*함수 매개변수에 기본값
function simple(s){
s= s|| ''
return s.length;
}
아래처럼 인수를 전달하지 않으면 매개변수에는 undefined가 할당되어서 에러가 발생할수도있다.
simple() //0
simple('dd') //2
단축평가를 사용해서 매개변수의 기본값 지정
function simple(s=''){
return s.length;
}
simple() //0
simple('dd') //2
옵셔널 체이닝 연산자
-> ?.
좌항의 피연산자가 null or undefined일 경우 undefined를 반환하고, 아니면 우항의 프로퍼티 참조를 이어간다.
var hi=null;
var say= hi?.value;
log(say) //undefined
우항의 프로퍼티 참조 (?) 정리하면서 다루겠다.
var hi='';
var length= hi?.length;
log(length) //0
다른 점
var length= hi && hi.length;
log(length) //''
null 병합 연산자
-> ??
좌항이 null,undefined면 우항 반환, 아니면 좌항 반환
var hi= null ?? 'print';
log(hi) //print
var emp= '' ?? 'print';
log(emp) // ''
728x90
반응형