객체 자료형 이름.prototype.메소드 이름 = function() { }
위와 같이 prototype 객체
에 속성
과 메소드
를 추가하면 모든 객체
(와 기본자료형
)에서 해당 속성과 메소드를 사용할 수 있다.
Number.prototype.power = function ( n = 2 ) {
return this.valueOf() ** n;
}
const a = 2;
console.log(a.power()); // 4
console.log(a.power(3)); // 8
console.log(a.power(4)); // 16
소수점
이하 몇 자리까지 출력할지 결정할 때 사용한다.
toFixed(2)이면 소수점 이하 2자리, toFixed(3)이면 소수점 이하 3자리 등의 형태이다.
어떤 숫자가 NaN
인지 또는 Infinity
인지 확인할 때 사용한다.
숫자 자료 뒤에 온점을 찍는 형태가 아니라, Number 뒤로 찍고 사용한다.
const test1 = Number("숫자아님");
const test2 = 10 / 0;
console.log(Number.isNaN(test1)); // true
console.log(Number.isFinite(test2)); // false
문자열의 앞뒤 공백
을 삭제한다
const test = ` 탭, 스페이스바, 줄바꿈 모두 공백
` // 줄바꿈을 위해 백틱(`)으로 문자열 생성
console.log(test.trim()); // "탭, 스페이스바, 줄바꿈 모두 공백"
매개변수로 문자열을 잘라 배열
로 리턴한다.
const test = '1,2,3,4,5,6,7,8,9,10';
console.log(test.split(','));
// ['1', '2', '3', '4', '5', '6', '7', '8', 9', '10']
length
속성, indexOf()
메소드 등 문자열 관련 중요한 내용은 공식 문서에 잘 정리되어 있다.
자바스크립트 객체를 JSON 문자열로 변환할 때 사용한다.
const data = [{
name: '망고',
price: 10000
}];
console.log(JSON.stringify(data));
// [{"name":"망고", "price":10000}]
// 2번째 매개변수는 어떤 속성만 선택 추출하고 싶을 때 사용하지만 거의 사용되지 않는다.
// 3번째 매개변수는 출력 시 들여쓰기의 칸수를 설정한다.
console.log(JSON.stringify(data, null, 2));
// [
// {
// "name": "망고",
// "price": 10000
// }
//]
JSON 문자열을 자바스크립트 객체로 변환할 때 사용한다.
const data = [{
name: '망고',
price: 10000
}];
const json = JSON.stringify(data);
console.log(JSON.parse(json));
// 0: {name: '망고', price: 10000}