JavaScript data type conversion
Display conversion
There are three functions that can convert Convert string to numeric value: Number(), parseInt(), parseFloat(). Number() can be used for any data type, while the other two functions are specifically used to convert strings into numbers.
If the string is a numeric string, convert it to a decimal value.
If the string contains a valid hexadecimal format, such as "0xf", convert it to a decimal integer value of the same size.
If the string is an empty string or a space string, convert it to 0.
If the string contains characters other than those in the above format, convert it to NaN.
When the parseInt() function converts a string, it depends more on whether it conforms to the numerical pattern. It ignores leading spaces in the string until it finds the first non-space character. If the first character is not a numeric character or a negative sign, parseInt() will return NaN. If it is an empty string, it will return NaN. If the first character is a numeric character, parseInt() will continue parsing the second character until all subsequent characters have been parsed or a non-numeric character is encountered.
parseFloat() can return decimals. When parseFloat() converts, it also parses each character starting from the first character until it parses to the end of the string, or until it encounters an invalid floating-point numeric character, that is, the first character in the string The decimal point is valid, but the second decimal point is invalid.
Convert decimal to binary
Example:
var a = 302; console.log(a.toString(2)); toString( )<括号里面的数字是几就转换成几进制>
Convert other types of variables to For strings, we usually use the toString() method. Numeric values, Boolean values, objects and strings all have toString() method, but null and undefined do not have this method. We can also use the conversion function String(), which can convert any type of value into a string. When toString can represent a string in binary, octal, hexadecimal, or even other valid base formats by inputting the base.
For example:
console.log(a.toString()); // "123" console.log(bool.toString()); // "true"
var pi = 0.45; //0.95对toFixed有疑问为0.9 alert(Math.round(pi)); //round四舍五入取整 alert(pi.toFixed(1)); // 四舍五入为指定小数位数的数字。
Output type: string
toFixed它是一个四舍六入五成双的诡异的方法,"四舍六入五成双"含义:对于位数很多的近似数,当有效位数确定后,其后面多余的数字应该舍去,只保留有效数字最末一位,这种修约(舍入)规则是“四舍六入五成双”,也即“4舍6入5凑偶”这里“四”是指≤4 时舍去,"六"是指≥6时进上,"五"指的是根据5后面的数字来定,当5后有数时,舍5入1;当5后无有效数字时,需要分两种情况来讲:①5前为奇数,舍5不进;②5前为偶数,舍5入1。
var a = "070"; alert(typeof parseInt(a)); alert(parseInt(a)); IE6-7-8:56(八进制计算)
谷歌正常 70;
处理兼容:(a, 10),强制几进制输出!
隐式转换
隐式转换的方式可以通过+""、* 1、/ 1的运算来把数值转换成字符串。(可相互)
"123"-0 "123"*0 "123"/0 +"123" "123"%比前面的数值字符串大的数字;
显式转换是通过函数的形式,将字符串转换成数组的形式,隐式转换则是通过运算符的方式将字符串转换成数字的形式。
总结:
1)Number()
2)parseInt():返回整数
3)parseFloat():返回浮点数
4)toString():其它类型—>字符串
5)toFixed(n):保留n位小数(输出类型:string)
var str = 数字 + "";
var strs = + - * / %“数字”;
The above is the detailed content of Specific analysis of data type conversion in JavaScript. For more information, please follow other related articles on the PHP Chinese website!