基本类型
基本类型是一种既非对象也无方法的数据。在JavaScript中共有6中基本类型:string
,number
,boolean
,null
,undefined
,symbol
。所有基本类型的值都是不可改变的,基本类型的值可以被替换,但不能被改变。
当使用基本类型调用部分函数(等把其作为对象来操作时),首先会使用该变量的值来初始化一个对应的包装对象(如下),然后在此包装对象上进行操作。
包装对象可以通过调用valueOf()
方法返回基本类型值。
var bar = "baz";
console.log(bar); //baz
bar.toUpperCase();
// 实际上发生的是:
// new String(bar).toUpperCase();
console.log(bar); //baz
bar = bar.toUpperCase(); //BAZ
var primitive = "september";
primitive.vowels = 3;
//new object created to set property
//(new String("september")).vowels = 3;
primitive.vowels;
//another new object created to retrieve property
//(new String("september")).vowels; //undefined
参考文章:
The secret life of JavaScript primitives
数值类型
JavaScript 中的数字都是以64位浮点数形式存储。由于浮点数的存储机制问题,所以存在舍入误差,而舍入误差会随着数学运算而积累。所以当我们要进行精确数据操作的时候需使用库,如 big.js、math.js
相关函数:
-
parseInt()
将第一个参数转换成整数
或NaN
,第二个参数表示第一个参数的进制 -
parseFloat()
将参数转换成浮点数
-
Number()
/Boolean()
/String()
/Symbol()
基本类型包装对象的初始化函数 -
isNaN()
用来判断一个值是否为NaN
由于NaN != NaN
-
typeof
用来判断数据类型 -
isFinite()
判断是否有限
网友评论