배열, 객체 리터럴 모두 자료형은 object이다.
하지만 배열은 Array.prototype 객체가 부모 객체, 객체 리터럴 방식으로 생성한 객체는 Object.prototype 객체가 부모 객체이다.
splice(start, deleteCount, item)
start: 배열에서 시작 위치
deleteCount: start에서 지정한 시작 위치부터 삭제할 요소의 수
item: 삭제할 위치에 추가할 요소
delete는 원소 자체를 삭제하지는 않음. 원소 자체를 삭제하려면 splice를 사용하는 것이 용이.
생성자 함수로 배열과 같은 객체를 생성할 때는 반드시 new 연산자를 같이 써야한다.
호출할 때 인자가 1개이고, 숫자인 경우: 호출된 인자를 length로 갖는 빈 배열 생성
그 외의 경우: 호출된 인자를 요소로 갖는 배열 생성
let a = new Array(3); // (호출된 인자가 1개이고, 숫자인 경우)
console.log(a); // (출력값) [undefined, undefined, undefined]
console.log(a.length); // (출력값) 3
let b = new Array(1, 2, 3); // (그 외의 경우)
console.log(b); // (출력값) [1, 2, 3]
console.log(b.length); // (출력값) 3
length 프로퍼티를 가진 객체는 유사배열객체이다.
기본타입이 메서드를 호출하는 과정
기본값이 메서드 처리 순간에 객체로 변환된 다음, 각 타입별 표준 메서드를 호출한다. 메서드 호출이 끝나면 다시 기본 값으로 복귀하게 된다.
=> 기본 타입을 위해 정의된 표준 메서드들을 객체처럼 호출할 수 있다.
연산자
+: 더하기 연산과 문자열 연결 연산을 수행
let add1 = 1+2;
let add2 = 'nodie' + 'mecarry';
let add3 = 1 + 'seminar';
let add4 = 'seminar' + 2;
console.log(add1); // (출력값) 3
console.log(add2); // (출력값) nodiemecarry
console.log(add3); // (출력값) 1seminar
console.log(add4); // (출력값) seminar2
typeof 연산자: null과 배열은 object
기본타입 | 숫자 | 'number' |
기본타입 | 문자열 | 'string' |
기본타입 | 불리언 | 'boolean' |
기본타입 | null | 'object' |
기본타입 | undefined | 'undefined' |
참조타입 | 객체 | 'object' |
참조타입 | 배열 | 'object' |
참조타입 | 함수 | 'function' |
== (동등 연산자), === (일치 연산자)
== : 피연산자의 타입이 다를 경우에, 타입 변환을 거친 다음 비교.
=== : 피연산자의 타입이 다를 경우, 변환을 하지 않고 비교
!!연산자
=> 피연산자를 boolean 값으로 변환함
'JAVASCRIPT' 카테고리의 다른 글
[JavaScript] 원시 자료형 (0) | 2022.12.26 |
---|---|
[JavaScript] 변수 (0) | 2022.12.26 |
[JavaScript] 함수(1) (0) | 2022.12.15 |
[JavaScript] 객체 (0) | 2022.12.15 |
[JavaScript] 기초 (0) | 2022.12.15 |