-
[JAVASCRIPT] 데이터 타입과 연산자(3)Programming/JAVASCRIPT 2019. 12. 4. 17:42
유사 배열 객체
일반 객체에 length라는 프로퍼티가 있으면 어떻게 될까?
length 프로퍼티를 가진 객체를 유사 배열 객체 라고 함 !
객체임에도 자바스크립트의 표준 배열 메서드를 사용하는 게 가능!!!!
var arr = ['bar'];
var obj = {
name : 'start',
length : 1
};
arr.push('baek');
console.log(arr); // (출력) ['bar', 'baek']
obj.push('baek'); // (출력) error
유사 배열 객체에서 apply()를 사용하면 객체지만 표준 배열 메서드 활용 가능
ex)
var arr = ['bar'];
var obj = {
name : 'start',
length : 1
};
arr.push('baek');
console.log(arr); // (출력) ['bar', 'baek']
Array.prototype.push.apply(obj, ['baek']);
console.log(obj); // (출력) {'1' : 'baek', name: 'start', length: 2}
기본 타입과 표준 메서드
toExponential() - > 숫자를 지수 형태의 문자열로 변환
charAt() - > 문자열에서 인자로 받은 위치에 있는 문자를 반환
ex)
// 숫자 메서드 호출
var num = 0.5;
console.log(num.toExponential(1)); // (출력) '5.0e-1'
// 문자열 메서드 호출
console.log("test".charAt(2)); // (출력) 's'
== (동등) 연산자와 == (일치) 연산자
차이
== 연산자는 비교하려는 피연산자의 타입이 다른 경우 타입 변환을 거친 다음 비교
=== 연산자는 타입이 경우 타입을 변경하지 않고 비교
ex)
console.log(1 == '1'); // (출력) true
console.log(1 === '1') // (출력) false
!!연산자
!!의 역할 : 피연산자를 불린값으로 변환
console.log(!!0); // (출력) false
console.log(!!1); // (출력) true
console.log(!!'string') // (출력) true
console.log(!!''); // (출력) false
console.log(!!true); // (출력) true
console.log(!!false); // (출력) false
console.log(!!null); // (출력) false
console.log(!!undefined); // (출력) false
console.log(!!{}); // (출력) true
console.log(!![1,2,3]); // (출력) true
'Programming > JAVASCRIPT' 카테고리의 다른 글
[JAVASCRIPT] 함수와 프로토타입 체이닝(3) (0) 2019.12.04 [JAVASCRIPT]함수와 프로토타입 체이닝(2) (0) 2019.12.04 [JAVASCRIPT] 함수와 프로토타입 체이닝(1) (0) 2019.12.04 [JAVASCRIPT] 데이터 타입과 연산자(2) (0) 2019.12.04 [JAVASCRIPT] 데이터 타입과 연산자(1) (0) 2019.12.04