前端讲义15_javascript五种基本数据类型

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/msh2016/article/details/89759857

Undefined类型
var aa;
alert(aa);  //undefined
Undefined类型只有一个特殊值即undefiend。所有未初始化的变量均会保存该值。
undefined与未定义的变量不同,如果在代码中调用某个未定义(申明)的变量,解析器会提示错误信息。
Null类型
Null类型同样也只包含一个值即null,从逻辑上看它被当作空对象指针,正是由于这个特性,如果你定义某个变量时不确定当前赋何值,但未来需要赋某个object类型值时,正确的方式就是将该变量初始化为null。
在对null与undefined进行==比较时,会返回true,undefined派生自null,所以ECMA-262规定它俩相等性操作为true。
Boolean类型
Boolean俗称布尔,仅包括两个值:true和false。
这里有一个Boolean()转型函数,作用就是将其它类型值转换为布尔型。
转换规则主要如下。
String型:非空字符串-true,空字符串("")-false
Number型:任何非0数-true,0与NaN-false
Object型:任何对象-true,null-false
Undefined型:false
但并非使用该转型函数才会使数据类型转换,当遇到if语句时会对数据进行自动的类型转换。
举个非常简单的例子:
if (!localStorage['memberId']) {
   //登陆操作    
}
Number类型
JavaScript中的Number类型支持十进制、八进制以及十六进制的数值。
JavaScript会在适当的时候将不必要的浮点型转换为整型,比如浮点型的10.0会自动保存为整型的10。由于保存浮点型所需的内存是整型的两倍。JavaScript中浮点型的最高精度即为显示的17位小数。过大或过小的数可以使用科学计数法e来表示。
Infinity
JavaScript能够保存的数值并不是无限大小的,当大于或小于某个界限时,该值会被自动转换为特殊值——Infinity,检测一个数值是否为Infinity可以通过isFinite()函数。
NaN
还有个很特殊的值,那就是NaN,即非数值(Not a Number)。
这个特殊值的存在是为了避免在某些需要返回数值时因为运算问题未返回数值报错,影响程序运行。
比如一个数除以0,在其他编程语言中会抛出错误,而在JavaScript中会返回NaN。
检测一个值是否为NaN可以用isNaN()函数,它会尝试将接收的参数转换为数值,意思就是字符串“10”可以被转换成数值10,而字符串“color”不行。转换成功返回false,反之为true。
String类型
var str = 'Hello World';
alert(str.length); //11
在JavaScript中字符串使用单、双引号没有区别,只是要注意起始与结束保持一致即可。
JavaScript中也有转义字符,与其他语言基本一致。
任何字符串都可以通过length属性来获取其长度。

 

猜你喜欢

转载自blog.csdn.net/msh2016/article/details/89759857
今日推荐