1. Math object
1.1 Introduction
Math object is a mathematical object that provides mathematical calculations on data, such as obtaining absolute values, rounding up, etc. No constructor, cannot be initialized, only provides static properties and methods.
1.2 Constructor
None: The Math object has no constructor and cannot be initialized. It only provides static properties and methods.
1.3 Static attributes
1.3.1 Math.E: constant e. Returns the base of the natural logarithm: 2.718281828459045
1.3.2 Math.PI: constant π. Returns the value of pi: 3.141592653589793
1.4 Static method
1.4.1 Math.sin(value): sine function
1.4.2 Math.cos(value): cosine function
1.4.3 Math.tan(value): tangent function
1.4.4 Math.asin(value): arcsine function
1.4.5 Math.acos(value): Inverse cosine function
1.4.6 Math.atan(value): arctangent function
1.4.7 Math.abs(value): Returns the absolute value
Parameters:
①value {Number | NumberStr}: Number or pure numeric string.
Return value:
{Number} Returns the absolute number of the argument. If the parameter is not a number, NaN is returned.
Example:
h.abs('123'); // => 123: pure numeric string
Math.abs('-123'); // => 123
Math.abs(123); // => 123
Math.abs(-123); // => 123
Math.abs('123a'); // => NaN: non-pure numeric string
1.4.8 Math.ceil(value): Rounding a number up is not rounding
Parameters:
①value {Number | NumberStr}: Number or pure numeric string.
Return value:
{Number} returns the rounded value. If the parameter is not a number, NaN is returned.
Example:
Math.ceil(2.7); // => 3
Math.ceil(2.3); // => 3: 2.3 rounds up and returns 3
Math.ceil(-2.7); // => -2
Math.ceil(-2.3); // => -2
Math.ceil('2.7'); // => 3: pure numeric string
Math.ceil('2.7a'); // => NaN: non-pure numeric string
1.4.9 Math.floor(value): Rounding a number down, not rounding
Parameters:
①value {Number | NumberStr}: Number or pure numeric string.
Return value:
{Number} returns the rounded value. If the parameter is not a number, NaN is returned.
Example:
Math.floor(2.7); // => 2
Math.floor(2.3); // => 2
Math.floor(-2.7); // => -3: -2.7 rounds down and returns -3
Math.floor(-2.3); // => -3
Math.floor('2.7'); // => 2: pure numeric string
Math.floor('2.7a'); // => NaN: non-pure numeric string
1.4.10 Math.max(value1,value2...valueN): Returns the largest value in the parameters
Parameters:
①value1,value2....valueN {Number | NumberStr}: Number or pure numeric string.
Return value:
{Number} returns the maximum value. If a parameter is not a number, NaN is returned.
Example:
Math.max(1, 2, 3, 4, 5); // => 5
Math.max(1, 2, 3, 4, '5' ); // => 5
Math.max(1, 2, 3, 4, 'a'); // => NaN
1.4.11 Math.min(value1,value2...valueN): Returns the smallest value in the parameters
Parameters:
①value1,value2....valueN {Number | NumberStr}: Number or pure numeric string.
Return value:
{Number} returns the maximum value. If a parameter is not a number, NaN is returned.
Example:
Math.min(1, 2, 3, 4, 5); // => 1
Math.min('1', 2, 3, 4, 5); // => 1
Math.min(1, 2, 3, 4, 'a'); // => NaN
1.4.12 Math.pow(x,y): Returns the yth power of x
Parameters:
①x {Number | NumberStr}: Number or pure numeric string.
②y {Number | NumberStr}: Number or pure numeric string.
Return value:
{Number} returns x raised to the yth power. If a parameter is not a number, NaN is returned.
Example:
Math.pow(2, 3); // => 8: 2 to the third power
Math.pow(3, 2); // => 9: 3 to the power 2
Math.pow('4', 2); // => 16: 4 to the power 2
Math.pow('2a', 2); // => NaN
1.4.13 Math.random(): Returns a pseudo-random number, greater than 0 and less than 1.0
Parameters: None
Return value:
{Number} returns a pseudo-random number, greater than 0 and less than 1.0
Example:
Math.random(); // => 0.8982374747283757
Math.random(); // => 0.39617531932890415
Math.random(); // => 0.35413061641156673
Math.random(); // => 0.054441051790490746
1.4.14 Math.round(value): Round and then round
Parameters:
①value {Number | NumberStr}: Number or pure numeric string.
Return value:
{Integer} Returns the rounded integer of the argument. If the parameter is not a number, NaN is returned.
Example:
Math.round(2.5); // => 3
Math.round(2.4); // => 2
Math.round(-2.6); // => -3
Math.round(-2.5); // => -2: -2.5 is rounded to -2
Math.round(-2.4); // => -2
Math.round('2.7'); // => 3: pure numeric string
Math.round('2.7a'); // => NaN: non-pure numeric string
1.4.15 Math.sqrt(value): Returns the square root of the parameter
Parameters:
①value {Number | NumberStr}: Number or pure numeric string
Return value:
{Number} returns the square root of the parameter
Example:
console.log( Math.sqrt(9) ); // => 3
console.log( Math.sqrt(16) ); // => 4
console.log( Math.sqrt('25') ); // => 5
console.log( Math.sqrt('a') ); // => NaN
2. Number object
2.1 Introduction
Number object is a numerical object, including integers, floating point numbers, etc. in js.
2.2 Definition
var a = 1;
var b = 1.1;
2.3 Static attributes
2.3.1 Number.MAX_VALUE: represents the largest number in JS, about 1.79e 308
2.3.2 Number.MIN_VALUE: represents the smallest number in JS, about 5e-324
2.3.3 Number.NaN: Returns NaN, which represents a non-numeric value, not equal to any other number, including NaN itself. Number.isNaN() should be used to judge.
2.3.4 Number.NEGATIVE_INFINITY: Returns -Infinity, indicating negative infinity.
2.3.5 Number.POSITIVE_INFINITY: Returns Infinity, indicating positive infinity. If the calculated value is greater than Number.MAX_VALUE, Infinity is returned.
2.4 Static methods
2.4.1 Number.isInteger(value): Determine whether the parameter is an integer
Parameters:
①value {Number}: Number
Return value:
{Boolean} Returns whether the parameter is an integer. Pure integer strings also return false.
Example:
Number.isInteger(1); // => true
Number.isInteger(1.1); // => false
Number.isInteger('1'); // => false: Pure integer strings also return false
Number.isInteger('1.1'); // => false
Number.isInteger('a'); // => false: non-string returns false
2.4.2 Number.isNaN(value): Determine whether the parameter is NaN
Parameters:
①value {Object}: any type
Return value:
{Boolean} Returns whether the parameter is NaN.
Example:
Number.isNaN(NaN); // => true
Number.isNaN('NaN'); // => false :'NaN' string, not NaN
Number.isNaN(1); // => false
Number.isNaN('1'); // => false
2.4.3 Number.parseFloat(value): Convert parameters to floating point numbers
Parameters:
①value {Number | NumberStr}: Number or pure numeric string
Return value:
{Integer | Float} returns an integer or floating point value
Example:
Number.parseFloat(1); // => 1: Integer or return integer
Number.parseFloat(1.1); // => 1.1
Number.parseFloat('1aaa'); // => 1: If the string is preceded by a number, only numbers are returned
Number.parseFloat('1.1aaa'); // => 1.1
Number.parseFloat('a1'); // => NaN: does not start with a number, returns NaN
Number.parseFloat('a'); // => NaN
2.4.4 Number.parseInt(value): Convert parameters to integers
Parameters:
①value {Number | NumberStr}: Number or pure numeric string
Return value:
{Integer} returns an integer value
Example:
Number.parseInt(1); // => 1
Number.parseInt(1.1); // => 1: Floating point number returns integer
Number.parseInt('1aaa'); // => 1: If the string is preceded by a number, only numbers are returned
Number.parseInt('1.1aaa'); // => 1
Number.parseInt('a1'); // => NaN: does not start with a number, returns NaN
Number.parseInt('a'); // => NaN
2.5 Instance Methods
2.5.1 toExponential(value): Convert a number to exponential type, the parameter represents the number of digits after the decimal point
Parameters:
①value {Number}: represents the number of digits after the decimal point
Return value:
{String} returns the converted exponential type string
Example:
(123456789).toExponential(2); // => 1.23e 8: 2 decimal places
(123456789).toExponential(5); // => 1.23457e 8: 5 decimal places
(123456789).toExponential(10); // => 1.2345678900e 8: 10 decimal places, any missing digits are filled with 0
2.5.2 toFixed(value): Convert a number to a string with a specified number of decimal places. If no parameters are passed in, there will be no decimal places. The return value is rounded
Parameters:
①value {Number}: represents the number of digits after the decimal point
Return value:
{String} returns the converted string; insufficient decimal places are filled with 0; the return value is the rounded value
Example:
console.log((1).toFixed(2)); // => 1.00
console.log((1.2).toFixed(2)); // => 1.20: Insufficient digits, fill with 0
console.log((1.277).toFixed(2)); // => 1.28: Rounding
2.5.3 toString(): Convert a number to a string using the specified base. If no parameters are passed in, the default is decimal.
Parameters:
①value {Number}: represents a base number, value range: 2 to 36
Return value:
{String} converted to decimal string
Example:
(10).toString(); // => 10: Default is decimal
(10).toString(2); // => 1010: Binary
(10).toString(10); // => 10: decimal
(10).toString(16); // => a: Hexadecimal
2.6 Application Scenarios
2.6.1 Exceptions in addition, subtraction, multiplication and division of floating point numbers
Note: Addition, subtraction, multiplication and division of two floating point numbers in JS will return abnormal values, such as: 0.2 0.7, return 0.899999999999. You can use the toFixed() method to specify the decimal places.
Example:
console.log(0.2 0.7); // => 0.8999999999999999
console.log(0.7 - 0.5); // => 0.19999999999999996
console.log(3.03 * 10); // => 30.299999999999997
// Use toFixed() method
console.log( (0.2 0.7).toFixed(2) ); // => 0.90
console.log( (0.7 - 0.5).toFixed(2) ); // => 0.20
console.log( (3.03 * 10).toFixed(2) ); // => 30.30
2.6.2 Subtraction operation
Note: When performing subtraction in JS, the preceding and following values will be converted into numerical values before performing the operation. If the conversion fails, NaN is returned.
Example:
console.log('1' - 0); // => 1: Pure numeric string minus 0, which can be quickly converted to a Nubmer object
console.log( ('1' - 0).toFixed(2) ); // => 1.00: Call instance method after quickly converting to Nubmer object
console.log('1' - 'a'); // => NaN: One party cannot be converted to a Nubmer object