
This is what I learned today:
객체 자료형 이름.prototype.메소드 이름 = function () {
} // 객체 자료형 이름 = Number , String, Boolean
[example]
> Number.prototype.sample = 10 // Number.prototype에 sample이라는 속성 추가하면
10
> const i = 273
undefined
> i.sample //sample 속성을 갖고 있음
10
몇가지 예를 살펴보자면,
최신 자바스크립트에는 제곱 연산자(**)가 있다. 이를 사용하면 아래와 같이 숫자를 n제곱할 수 있다

이를 활용해 숫자 자료형에 n제곱하는 메소드를 추가해보자면,

코드에서 this.valueOf()로 숫자 값을 꺼냈다.그냥 this ** n 을 해도 아무 문제없이 계산된다.
하지만 객체 내부에서 값을 꺼내 쓰는 것임을 명확하게 하기 위해서는 valueOf() 메소드를 사용하는 것이 일반적이다.
이렇게 프로토타입에 메소드를 추가하면 이를 활용해서 숫자를 제곱할 수 있다.
함수를 생성 할 때 기본 매개변수도 사용했다.
여기서 기본 매개변수란 ->function (n=2) -> n = 2 === let n = 2 같은 말이다.
[example]
indexOf() 메소드를 사용한다.
자바스크립트에는 어떠한 문자열 내부에 어떠한 문자열이 포함되어 있는지를 알수 있는 메소드가 따로 없다. 그래서 어떠한 문자열 내부에 어떠한 문자열이 포함되어 있는지를 알수있는 방법은 indexOf() 메소드를 활용을 해서
문자열.indexOf('찾을 문자열') >= 0로 알아볼 수 있다.
문자열의 indexOf() 메소드를 사용하는 예를 알아보자.

프로토타입(prototype)이란 일시적으로 승급이 일어나는 옷이며 여기다가 메소드를 추가해서 기본자료형이 추가적인 메소드를 활용할 수 있게 하는 녀석이다! 라는 것을 꼭 기억해두자
🔻 toFixed()
Number 객체에서 자주 사용하는 메소드 toFixed() 이다소수점을 가진 숫자.toFixed(나타낼 소수점자리수)
[example]

'string'이다📌 isNaN() , isFinite()
🔻 isNaN()

어떤 숫자가 NaN(Not a Number)인지 또는 infinity(무한)인지 확인할 때는
Number.isNaN()
Number.isFinite()
메소드를 사용한다.
이 메소드들은 숫자 자료형 뒤에 온점을 찍고 사용하는 것이 아니라 Number 뒤에 점을 찍고 사용한다.
우선 isNaN() 을 알아본다.
🔖 isOO() 로 시작되는 메소드들은 true 또는 false를 리턴함, 나중에 이러한 메소드를 보면 이게 무엇을 리턴하는지 예상할 수 있다.
위 같이 NaN과 비교해서는 NaN인지 확인할 수 없다.그래서 NaN인지 확인할 때는isNaN() 메소드를 써준다.
> const m = Number('숫자로 변환할 수 없는 경우')
undefined
> m // NaN을 생성한다
NaN
> m === NaN // NaN과 비교해서는 NaN인지 확인할 수 없음
false
> Number.isNaN(m)
true
🔻 isFinite()
Infinity는 무한대 숫자를 의미한다.Infinity라고 표현한다.isFinite() 는 말그대로 유한한가? 라는 뜻이기때문에 유한한 숫자인지 확인하는 메소드이다.> const n = 10 / 0
undefined
> n
Infinity // 양의 무한대를 생성함
> const o = -10 / 0
undefined
> o
-Infinity // 음의 무한대를 생성함
// isFinite(유한한 숫자인가?)가 false로 나옴
> Number.isFinite(n)
false
> Number.isFinite(o)
false
// 일반적인 숫자는 셀 수 있으므로 true가 나옴
> Number.isFinite(1)
true
> Number.isFinite(10)
true
무한대 숫자는 양의 무한대 음의 무한대 숫자로 나뉜다.
isFinite()메소드가 false인 경우는 양의 무한대 숫자와 음의 무한대 숫자 2가지 경우이다.
그리고 Infinity와 직접 비교해봐도 확인할 수 있다.
🔻 trim()

trim 이라고 부른다.[example]

→ trim()을 사용함으로써 문자열 앞뒤 공백 제거를 볼 수 있음
🔻 split()
[example]

→ split() 메소드를 사용함으로써 문자열을 매개변수(다른 문자열)로 잘라서 배열을 만들 수 있음
JSON은 JavaScript Object Notation 의 약자로 자바스크립트의 객체처럼 자료를 표현하는 방식이다.CSV, XML, CSON 등의 다양한 자료 표현 방식을 사용할 수 있다.현재 가장 많이 사용되는 자료 표현 방식은JSON 객체 이다.JSON은 말이 어려워보일뿐이지 그저자바스크립트의 배열과 객체를 활용해 어떤 자료를 표현하는 형식일 뿐이다.
- 값을 표현할 때는 문자열,숫자,불 자료형만 사용할 수 있다. (함수 등 사용불가!) 2. 문자열은 반드시 큰따옴표로 만들어야함(" ") 3. 키(key)에도 반드시 따옴표 붙여야함 ("key": value)
🔻 JSON.stringify() 메소드
JSON.stringify()🔻 JSON.parse() 메소드
and I studied for 21hrs today...so proude of me..🥹🔥