객체 지향 JavaScript — 숫자

https://www.amazon.com/John-Au-Yeung/e/B08FT5NT62에서 Amazon에서 내 책을 확인하십시오.

지금 http://jauyeung.net/subscribe/에서 내 이메일 목록을 구독하십시오.

JavaScript는 부분적으로 객체 지향 언어입니다.

JavaScript를 배우려면 JavaScript의 객체 지향 부분을 배워야 합니다.

이 기사에서는 기본 값인 객체의 구성 요소를 살펴보겠습니다.

기본 데이터 유형



JavaScript에는 몇 가지 기본 데이터 유형이 있습니다.

숫자, 문자열, 부울, undefined  , null   및 bigint입니다.

숫자는 부동 소수점 숫자와 정수입니다.

문자열은 모든 문자 그룹입니다.

부울은 true 또는 false  입니다.
undefined는 존재하지 않는 값입니다.
null는 빈 값을 나타냅니다.

Bigint는 n로 끝나는 정수이며 -2 ** 53와 2 ** 53 사이의 안전 범위를 벗어날 수 있습니다.

이러한 유형이 아닌 모든 값은 객체입니다.

값 유형 찾기


typeof 연산자로 원시 값의 값을 찾을 수 있습니다.
typeof 반환할 수 있습니다 'number'  . 'string'  , 'boolean'  , 'undefined'  , 'object' 또는 'function'  .

숫자는 typeof  로 감지할 수 있는 유형 중 하나입니다.

숫자



예를 들어 다음과 같이 작성할 수 있습니다.

let n = 1;
typeof n;

'number'  .

8진수 및 16진수



8진수 및 16진수도 'number'를 반환합니다.  .

예를 들어 다음과 같이 작성할 수 있습니다.

let n = 0o377;
typeof n;


8진수를 작성하고 유형을 확인합니다.

16진수를 확인하려면 다음과 같이 작성할 수 있습니다.

let n = 0x00;
typeof n;


또한 반환됩니다'number'  .

이진수


0b 접두사를 사용하여 이진 리터럴을 작성할 수도 있습니다.

예를 들어 다음과 같이 작성할 수 있습니다.

let n = 0b111;


지수



지수는 e  로 쓸 수 있습니다.

예를 들어 다음과 같이 작성할 수 있습니다.

1e1


그리고 10을 얻습니다.
typeof 에 전달하면 'number' 를 얻습니다.

typeof 1e1


무한대



무한대는 또 다른 종류의 숫자입니다.

JavaScript가 처리하기에는 너무 큰 숫자입니다.
Infinity는 숫자이므로 다음과 같이 작성합니다.

typeof Infinity

'number'  .

0으로 나누면 무한대가 됩니다. 예를 들어 다음과 같이 작성합니다.

let a = 1 / 0


그러면 a는 Infinity  입니다.

가장 작은 숫자는 -Infinity  입니다.

우리가 가지고 있을 때:

Infinity - Infinity


또는

- Infinity + Infinity


값이 불확실하기 때문에 NaN를 얻습니다.

그러나 다른 모든 것은 우리에게 Infinity 또는 -Infinity를 제공합니다.

예를 들어 다음과 같이 작성할 수 있습니다.

Infinity - 20

Infinity  .

우리가 쓰는 경우 :

-Infinity * 3

-Infinity  .

숫자가 유한한지 확인하는 전역isFinite 함수가 있습니다.

ES6은 또한 동일한 검사를 수행하기 위해 Number.isFinite를 추가합니다.

차이점은 전역isFinite 함수가 검사를 수행하기 전에 값을 캐스팅한다는 것입니다.

그리고 Number.isFinite 그렇게 하지 않습니다.

난


NaN는 숫자가 아닙니다.

숫자이기도 한 특별한 값입니다.

우리가 쓰는 경우 :

typeof NaN

'number'  .

숫자가 아닌 값으로 산술을 수행하면 NaN  가 됩니다.

예를 들어 다음이 있는 경우:

let a = 10 * "a"

NaN  .
NaN 메서드로 값이 Number.isNaN인지 확인할 수 있습니다.

전역isNaN 메서드도 있습니다.

차이점은 글로벌은 캐스팅을 하고 비전역은 하지 않는다는 것입니다.

그래서:

Number.isNaN('test')

false를 반환하지만

Number.isNaN(NaN)


반환true  .
Number.isInteger는 값이 유한 정수인지 확인하는 방법입니다.

예를 들어 다음이 있는 경우:

Number.isInteger(123)


그러면 반환됩니다true  .

그러나 다음이 있는 경우:

Number.isInteger('foo')


반환합니다false  .

비교를 수행하기 전에 캐스팅을 수행하지 않습니다.

결론



JavaScript에는 다양한 종류의 기본 값이 있습니다.

그 중 하나는 숫자입니다.

다양한 숫자 표현이 있습니다.

좋은 웹페이지 즐겨찾기