자바스크립트 언제 끝나...? 혼자서 독학할 땐 이렇게 깊이 다루지 않았단 말이다ㅠㅠ
그만큼 대충 공부한거지 뭐ㅡ.ㅡ
🔎 표준 내장 객체란?
자바스크립트 엔진에 기본으로 내장되어 있는 객체
질문)
그렇다면 null, undefined, Symbol은 표준 내장 객체에 포함되지 않는걸까?
답변)
null과 undefined는 자바스크립트의 기본 값으로, 객체가 아니다.
Symbol은 Symbol()
로 생성할 수 있기는 하나, 정확히는 기본 자료형이다. 그리고 기본 자료형과 상관없이 Symbol도 표준 내장 객체에 포함된다.
질문)
Number, String, Boolean은 표준 내장 객체인데, 그러면 기본 자료형은 표준 내장 객체인 거 아닐까?
답변)
기본 자료형은 객체가 아닌 단순 값이다.
표준 내장 객체는 기본 자료형의 래퍼 객체로, 이 객체들은 기본 자료형의 값을 객체처럼 다룰 수 있도록 해주는 역할이다.
따라서, 기본 자료형 자체는 표준 내장 객체가 아니다.
let numLiteral = 10;
let numObject = new Number(10);
console.log(numLiteral + numObject); // 20
console.log(numLiteral == numObject); // true
console.log(numLiteral === numObject); // false
let strLiteral = "abc";
let strObject = new String("abc");
console.log(strLiteral + strObject); // abcabc
console.log(strLiteral == strObject); // true
console.log(strLiteral == strObject); // false
let booleanLiteral = true;
let booleanObject = new Boolean(true);
let arrLiteral = [10, 20, 30];
let arrObject = new Array(10, 20, 30);
let objLiteral = {name:'철수', age:20}
let objObject = new Object({name:'철수', age:20});
function sum(a, b) {
return a+b;
}
sum(10, 20);
let sumObject = new Function('a', 'b', 'return a+b');
sumObject(10,20);
const array = ["a", "b"]
console.log(array.push("c")); // 3
console.log(array.unshift("d")); // 4
arr.slice(시작 인덱스, 마지막 인덱스+1)
=> 배열의 일부를 얕은 복사하여 리턴한다.arr.splice(시작 인덱스, 제거 개수, [대체 요소])
=> 원본 배열이 변경된다.const numbers = [1, 2, 3, 4];
const sum = numbers.reduce((acc, num) => acc + num, 0); // 초기값 설정
const sum = numbers.reduce((acc, num) => acc + num); // 초기값 미설정
console.log(sum); // 10
-
연산이 불가능 하므로 다음 2가지 방법을 이용해야 한다.items.sort(function(a, b) {
var nameA = a.name.toUpperCase();
var nameB = b.name.toUpperCase();
if (nameA < nameB) {
return -1;
}
if (nameA > nameB) {
return 1;
}
return 0;
});
items.sort(function(a, b) {
var nameA = a.name.toUpperCase();
var nameB = b.name.toUpperCase();
return nameA.localeCompare(nameB); // 사전 순 정렬
});
const nestedArray = [1, [2, 3], [4, [5, 6]]];
console.log(nestedArray.flat()); // [1, 2, 3, 4, [5, 6]]
console.log(nestedArray.flat(2)); // [1, 2, 3, 4, 5, 6]
const arr = new Array(5).fill(0);
console.log(arr); // [0, 0, 0, 0, 0]
const arr = [1, 2, 3, 4, 5];
arr.copyWithin(0, 3); // 인덱스 3부터 시작([3, 4, 5])하여 인덱스 0으로 복사
console.log(arr); // [4, 5, 3, 4, 5]
const str = "istanbul";
console.log(str.toLocaleUpperCase('tr-TR')); // 'İSTANBUL'
console.log(str.toLocaleLowerCase('tr-TR')); // 'istanbul'
const str = "The rain in Spain stays mainly in the plain.";
const result = str.match(/ain/g);
console.log(result); // ['ain', 'ain', 'ain']
const str = "The quick brown fox jumps over the lazy dog.";
const index = str.search(/fox/);
console.log(index); // 16
정리 진짜 간결하게 잘하시네요!