2024-05-06 20:40:05 +00:00
|
|
|
---
|
2024-10-29 18:27:12 +00:00
|
|
|
date: 2020-06-13
|
2024-05-06 20:40:05 +00:00
|
|
|
id: cb93f6ba-527b-4602-b5f4-de0281897800
|
|
|
|
title: JavaScript Types
|
|
|
|
---
|
|
|
|
|
|
|
|
# Numbers
|
|
|
|
|
|
|
|
JavaScript uses 64 bits to store number values
|
|
|
|
|
|
|
|
## Fractional numbers
|
|
|
|
|
|
|
|
``` javascript
|
|
|
|
console.log(9.81)
|
|
|
|
```
|
|
|
|
|
|
|
|
## Scientific notation
|
|
|
|
|
|
|
|
``` javascript
|
|
|
|
console.log(2.998e8)
|
|
|
|
```
|
|
|
|
|
|
|
|
## Special Numbers
|
|
|
|
|
|
|
|
### Infinity
|
|
|
|
|
|
|
|
Infinity and -Infinity represent positive and negative infinities
|
|
|
|
|
|
|
|
``` javascript
|
|
|
|
console.log(Infinity - 1)
|
|
|
|
console.log(Infinity + 1)
|
|
|
|
console.log(-Infinity - 1)
|
|
|
|
console.log(-Infinity + 1)
|
|
|
|
```
|
|
|
|
|
|
|
|
### NaN
|
|
|
|
|
|
|
|
Not a number. The returned result if you try to do mathematical nonsense
|
|
|
|
|
|
|
|
``` javascript
|
|
|
|
console.log(0/0)
|
|
|
|
console.log(Infinity - Infinity)
|
|
|
|
```
|
|
|
|
|
|
|
|
# Boolean
|
|
|
|
|
|
|
|
``` javascript
|
|
|
|
console.log(3 > 2)
|
|
|
|
console.log(3 < 2)
|
|
|
|
```
|
|
|
|
|
|
|
|
Strings can also be compared
|
|
|
|
|
|
|
|
``` javascript
|
|
|
|
console.log("Aardvark" < "Zoroaster")
|
|
|
|
```
|
|
|
|
|
|
|
|
Uppercase characters are always less than lower case characters, so "Z"
|
|
|
|
\< "a". Non alphabetic characters are less than alphabetic characters
|
|
|
|
|
|
|
|
``` javascript
|
|
|
|
console.log("Zebra" < "aardvark")
|
|
|
|
console.log("!" < "aardvark")
|
|
|
|
console.log("!" < "Zebra")
|
|
|
|
console.log("3" < "Zebra")
|
|
|
|
console.log("!" < "3")
|
|
|
|
```
|
|
|
|
|
|
|
|
# Empty values
|
|
|
|
|
|
|
|
There are two special empty values, null & undefined that denote the
|
|
|
|
absence of any meaningful value. They can be used interchangeably and
|
|
|
|
are an [accident of JavaScripts
|
|
|
|
design](https://medium.com/@stephenthecurt/a-brief-history-of-null-and-undefined-in-javascript-c283caab662e).
|
|
|
|
|
|
|
|
``` javascript
|
|
|
|
console.log(null == undefined);
|
|
|
|
```
|
|
|
|
|
|
|
|
# Related
|
|
|
|
|
|
|
|
- [JavaScript](20200613170905-javascript)
|
|
|
|
- [Arrays](20200826201029-arrays)
|
|
|
|
- [Strings](20200922164551-strings)
|