JavaScript中的数值类型可以用来存储和操作数字数据。数值类型包括整数(例如:1、2、3)、浮点数(例如:1.5、2.8)以及特殊值Infinity和NaN。
在JavaScript中,数值类型可以使用常规的十进制表示法,也可以使用科学计数法表示大或小的数字。例如:
var num1 = 10; // 整数
var num2 = 3.14; // 浮点数
var num3 = 2.5e6; // 科学计数法表示的数字(2.5乘以10的6次方,即2500000)
JavaScript还支持其他进制的数值表示,例如二进制、八进制和十六进制。可以使用相应的前缀来表示不同的进制,如下所示:
var binaryNum = 0b1010; // 二进制(0b前缀)
var octalNum = 0o14; // 八进制(0o前缀)
var hexNum = 0xA; // 十六进制(0x前缀)
JavaScript中的数值类型还有一些特殊的值:
Infinity:表示正无穷大,可以通过除以0得到。
console.log(1 / 0); // 输出:Infinity
-Infinity:表示负无穷大,可以通过除以0得到的负数。
console.log(-1 / 0); // 输出:-Infinity
NaN(Not-a-Number):表示非数字,通常是由于非法的数学操作或无效的转换过程导致的。
console.log(0 / 0); // 输出:NaN
JavaScript提供了一系列内置的方法和运算符来对数值进行操作,包括加法、减法、乘法、除法、取余等。可以使用这些方法来完成数值计算和处理。
var num1 = 10;
var num2 = 5;
console.log(num1 + num2); // 加法,输出:15
console.log(num1 - num2); // 减法,输出:5
console.log(num1 * num2); // 乘法,输出:50
console.log(num1 / num2); // 除法,输出:2
console.log(num1 % num2); // 取余,输出:0
JavaScript提供了一些内置的方法和属性来处理数值类型。以下是一些常用的数值方法和属性的详细说明:
toFixed(numDigits):将数值转换为指定小数位数的字符串表示,并返回结果。
var num = 3.14159;
console.log(num.toFixed(2)); // 输出:3.14
toPrecision(precision):将数值转换为指定有效数字位数的字符串表示,并返回结果。
var num = 123.456789;
console.log(num.toPrecision(4)); // 输出:123.5
toString(radix):将数值转换为指定进制表示的字符串,并返回结果。默认情况下,使用十进制表示。
var num = 10;
console.log(num.toString(2)); // 输出:1010 (二进制表示)
console.log(num.toString(8)); // 输出:12 (八进制表示)
console.log(num.toString(16)); // 输出:a (十六进制表示)
parseInt(string, radix):将指定字符串解析为整数,并返回结果。可指定解析时的进制(默认为十进制)。
console.log(parseInt("10")); // 输出:10 (默认为十进制)
console.log(parseInt("1010", 2)); // 输出:10 (二进制解析)
console.log(parseInt("12", 8)); // 输出:10 (八进制解析)
console.log(parseInt("a", 16)); // 输出:10 (十六进制解析)
parseFloat(string):将指定字符串解析为浮点数,并返回结果。
console.log(parseFloat("3.14")); // 输出:3.14
console.log(parseFloat("2.7e2")); // 输出:270
isFinite(value):检查给定的值是否是有限数(即非Infinity和NaN),返回布尔值。
console.log(isFinite(10)); // 输出:true
console.log(isFinite(Infinity)); // 输出:false
console.log(isFinite(NaN)); // 输出:false
isNaN(value):检查给定的值是否为NaN(不是一个数字),返回布尔值。
console.log(isNaN(10)); // 输出:false
console.log(isNaN("Hello")); // 输出:true
console.log(isNaN(NaN)); // 输出:true