JavaScript进阶 互动版

在线工具推荐: Three.js AI纹理开发包 - YOLO合成数据生成器 - GLTF/GLB在线编辑 - 3D模型格式在线转换 - 可编程3D场景编辑器

number类型


在JavaScript中不区分整数值和浮点数值(在Java中也称为双精度数值)。还有一种特殊的数值即NaN(Not a Number),下面进行详细的讲解:

浮点数值:

浮点数值就是该数值中包含一个小数点,并且小数点后面必须至少有一个数字。如下定义了两个浮点数值的变量。

var floatN1 = 0.4;
var floatN2 = 3.4;

在保存浮点数值时需要的内存空间是整数值的两倍,因此JavaScript在一些情况下会将 浮点数值转换为整数值。如下列情况:

  • 小数点后面没有跟任何的数字;
  • 本身表示的就是一个整数(像3.0)。

示例:

var floatN1 = 3.;  //小数点后面没有数字,解析为3
var floatN2 = 3.0; //本身表示整数,解析为3

NaN:

NaN是一个数值,它表示一个不能产生正常结果的运算结果。NaN不等于任何值,包括它自己本身。我们可以用函数isNaN(number)检测NaN。

number参数可以是任意类型,而函数会帮我们确定这个参数是否“不是数值”。这个函数在接收一个值之后,会尝试将这个值转换为数值。而任何不能被转换为数值的值都会导致这个函数返回true。

示例:

alert(isNaN(NaN));        //true
alert(isNaN(3));        //false(3是一个数值)
alert(isNaN("3"));        //false(可以被转换成数值3)
alert(isNaN(true));        //false(被转换成数值1)
alert(isNaN("bool"));    //true(不能被转换成数值)