Numbers_and_Dates

Numbers and Dates

Numbers

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
// Number
// Binary base 2 - 0 1
console.log(23 === 23.0); //true
console.log(0.1 + 0.2); //0.30000000000000004

// Conversion
console.log(Number('23'));
console.log(+'23');

// Parsing
console.log(Number.parseInt('30px', 10)); //30
console.log(Number.parseInt('e23', 10)); //NaN

console.log(Number.parseFloat(' 2.5rem', 10)); //2.5

// Check if value is NaN
console.log(Number.isNaN(20)); //false
console.log(Number.isNaN('20')); //false
console.log(Number.isNaN(+'20d')); //true
console.log(Number.isNaN(20 / 0)); //false

// Check if value is number
console.log(Number.isFinite(20)); // true
console.log(Number.isFinite('20')); // false
console.log(Number.isFinite(20 / 0)); // false

console.log(Number.isInteger(20));// true
console.log(Number.isInteger(20.0));// true
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
console.log(Math.sqrt(25)); // 5
console.log(25 ** (1 / 2)); // 5
console.log(8 ** (1 / 3)); // 2
console.log(5 ** 2); // 25

console.log(Math.max(1, 2, 3, 4, 5, 33, 6, 7)); //33
console.log(Math.max(1, 2, 3, 4, 5, '33', 6, 7)); //33

console.log(Math.PI); // 3.141592653589793

console.log(Math.random()); // Between 0 - 1

console.log(Math.trunc(Math.random() * 6) + 1); // Between 1 - 6

const randomInt = (max, min) =>
Math.trunc(Math.random() * (max - min) + 1) + min;

console.log(Math.trunc(23.3)); // 23

console.log(Math.round(23.3)); // 23
console.log(Math.round(23.9)); // 24

console.log(Math.ceil(23.3)); // 24
console.log(Math.ceil(23.9)); // 24

console.log(Math.floor(23.3)); // 23
console.log(Math.floor('23.9')); // 23

// Rounding decimals
console.log((2.7).toFixed(0)); // 3 (string)
console.log((2.7).toFixed(3)); // 2.700 (string)
console.log(+(2.7).toFixed(3)); // 2.7

Numeric Separators

1
2
3
4
5
const diameter = 287_460_000_000;
console.log(diameter); // 287460000000

const price = 345_99;
console.log(price);// 34599

BigInt

1
2
console.log(924363493238473294623946239747); // 9.243634932384733e+29
console.log(924363493238473294623946239747n); // 924363493238473294623946239747n

Operations

1
2
3
4
5
6
const huge = 93222222244444444444444444321324n;
const num = 3432;
console.log(22384674238685674346n + 324739847n); // 22384674239010414193n
console.log(huge * BigInt(num)); // 319938666742933333333333332910783968n
console.log(huge * num);
// Uncaught TypeError: Cannot mix BigInt and other types, use explicit conversions
1
console.log(11n / 3n); // 3n

Dates

Creating Dates

1
2
3
4
5
6
7
8
9
10
11
12
13
//create a date
const now = new Date();
console.log(now); // Mon Jan 02 2023 15:20:12 GMT+0800 (中国标准时间)
console.log(typeof now); // object

console.log(new Date('Jan 02 2023 15:21:54')); //Mon Jan 02 2023 15:21:54 GMT+0800 (中国标准时间)
console.log(new Date('December 24, 2015')); // Thu Dec 24 2015 00:00:00 GMT+0800 (中国标准时间)

console.log(new Date(2077, 12, 13, 2, 34, 89)); // Thu Jan 13 2078 02:35:29 GMT+0800 (中国标准时间)
//month begins from 0;

console.log(new Date(0)); // Thu Jan 01 1970 08:00:00 GMT+0800 (中国标准时间)
console.log(new Date(3 * 24 * 60 * 60 * 1000)); // Sun Jan 04 1970 08:00:00 GMT+0800 (中国标准时间)

Methods

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
// Working with dates
const future = new Date(2077, 11, 13, 2, 34, 89);
console.log(future); // Mon Dec 13 2077 02:35:29 GMT+0800 (中国标准时间)
console.log(future.getFullYear()); // 2077
console.log(future.getMonth()); // 11
console.log(future.getDate()); // 13
console.log(future.getHours()); // 2
console.log(future.getMinutes()); // 35
console.log(future.getSeconds()); // 29
console.log(future.getMilliseconds()); // 0
console.log(future.toISOString()); // 2077-12-12T18:35:29.000Z

const timeStamp = future.getTime();
console.log(timeStamp); // 3406559729000
console.log(new Date(timeStamp)); // Mon Dec 13 2077 02:35:29 GMT+0800 (中国标准时间)

//TimeStamp of now
console.log(Date.now()); // 1672645408693

//The day of this week
console.log(future.getDay()); // 1

//Set version of these methods
future.setFullYear(2099);
console.log(future.getFullYear()); // 2099

本站由 @Eureka 使用 Stellar 主题创建。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。