In JavaScript, there are generally three ways to convert values:
1. Number (param) function: param can be used for any data type
1.1 param is a Boolean value, true and false are converted to 1 and 0 respectively;
1.2 param is a numerical value, it is simply passed in and returned
1.3 param is null and undefined, returning 0 and NaN respectively
1.4 param is a string and follows the following rules:
1.4.1 If the string contains only numbers, it is converted to decimal and the leading 0 is ignored;
1.4.2 If the string contains a valid floating point number format, the corresponding floating point value is returned, and the leading 0 is ignored;
1.4.3 If the string contains valid hexadecimal, return the equivalent decimal value
1.4.4 If the string is empty, return 0
1.4.5 If the string contains characters other than the above format, NaN is returned
1.5 If param is an object, call the valueOf() method, convert and return a string value according to the previous rules. If NaN is returned, call the toString() method, convert and return a string value according to the previous rules again.
1.6 Example:
<span style="font-family:Microsoft YaHei;font-size:18px;">var num1 = Number("hello"); //NaN var num2 = Number(""); //0 var num3 = Number("00022"); //22 var num4 = Number(true); //1</span>
2. parseInt(param): Convert a string into an integer, param is a string type.
parseInt() ignores spaces in front of the string until it finds the first non-space character S; if S is not a number or a negative sign, it returns NaN (that is, parseInt() returns NaN for empty characters. Note that Number() Empty returns 0). If S is a number, parseInt() will continue to parse the next character until all characters are parsed or a non-numeric character is encountered. parseInt() supports parsing of octal and hexadecimal
<span style="font-family:Microsoft YaHei;font-size:18px;">var num1 = parseInt("1234blue"); //1234 var num2 = parseInt(""); //NaN var num3 = parseInt("22.5"); //22 var num4 = parseInt("070"); //八进制,转换为十进制的56</span>
3. parseIFloat(param): Convert a string into a floating point number. param is a string type.
Similar to parseInt, parseFloat() starts parsing from the first character until all characters are parsed or a non-floating point character is encountered. The first decimal point is valid, but the second is not, and the function can only parse decimal numbers because it always ignores leading 0.
<span style="font-family:Microsoft YaHei;font-size:18px;">var num1 = parseFloat("1234blue"); // 1234 var num2 = parseFloat("0xf6"); // 0 var num3 = parseFloat("22.5"); // 22.5 var num4 = parseFloat("22.5.4"); //22.5 var num5 = parseFloat("3.125e7"); // 31250000</span>