读书笔记 JavaScript高级程序设计 第三章 基本概念-数据类型
2016-02-01 22:43
781 查看
ECMAScript中有5中简单的数据类型:Null,Undefined,Boolean,Number,String
还有一种复杂数据类型:Object。Object本质上是一组无序的名值对组成的。*ECMAscript不支持任何创建自定义类型的机制。也就是说:所有的数据类型最终都是上述的6中数据类型之一。*
1. undefined
2. boolean
3. string
4. object
5. number
6. function
严格来说,function在ECMAScript中是对象,不是一种数据类型。然而,函数也确实有一些特殊的属性,因此通过typeof操作符来区分函数和其他对象时有必要的。
如果定义的变量准备在将来用于保存对象,那么最好将该变量初始值初始化为null而不是其他值。
实际上,undefined值是派生自null值。alert(null == undefined) // true
可以对任何数据类型的值调用Boolean()函数,而且总会返回一个Boolean类型的值。转换规则如下:
这些转换规则对于理解流控制语句(if语句)自动执行相应的Boolean转换非常重要。
var num1 = 070;//八进制56
var num2 = 079;//无效的八进制数,会被解析为十进制的79
var num3 = 08;//无效的八进制数,会被解析为十进制的8;
八进制字面量在严格模式下是无效的,会导致支持该模式的JavaScript引擎抛出错误。
还有一种复杂数据类型:Object。Object本质上是一组无序的名值对组成的。*ECMAscript不支持任何创建自定义类型的机制。也就是说:所有的数据类型最终都是上述的6中数据类型之一。*
数据类型
typeof操作符
typeof是用来检测数据属于哪种数据类型的操作符。其结果有6种可能的结果:1. undefined
2. boolean
3. string
4. object
5. number
6. function
注意
typeof操作符的操作数可以是变量也可以是数值字面量。有的时候,操作符会返回一些令人疑惑但技术上正确的值。比如typeof null会返回object。因为特殊值null被认为是一个空的对象引用。严格来说,function在ECMAScript中是对象,不是一种数据类型。然而,函数也确实有一些特殊的属性,因此通过typeof操作符来区分函数和其他对象时有必要的。
Undefined类型
Undefined类型只有一个值,即特殊值undefined。在使用var声明变量但未对变量加以初始化时,这个变量的值就是undefined。对于尚未声明过的变量,只能执行一项操作,即使用typeof操作符检测其数据类型。Null类型
Null类型是第二个只有一个值的数据类型,这个类型的值是null。从逻辑上讲,null值表示一个空指针。而这也是为什么使用typeof操作符检测null值时返回object的原因。如果定义的变量准备在将来用于保存对象,那么最好将该变量初始值初始化为null而不是其他值。
实际上,undefined值是派生自null值。alert(null == undefined) // true
Boolean类型
Boolean类型只有2个字面值,true和false。可以对任何数据类型的值调用Boolean()函数,而且总会返回一个Boolean类型的值。转换规则如下:
这些转换规则对于理解流控制语句(if语句)自动执行相应的Boolean转换非常重要。
Number类型
最基本的数值字面量是十进制整数。除此之外还可通过8进制好16进制的字面量来表示。var num1 = 070;//八进制56
var num2 = 079;//无效的八进制数,会被解析为十进制的79
var num3 = 08;//无效的八进制数,会被解析为十进制的8;
八进制字面量在严格模式下是无效的,会导致支持该模式的JavaScript引擎抛出错误。
相关文章推荐
- JavaScript第四课——数据类型(Number类型)
- JavaScript 使用
- Js As Ordinal
- JavaScript
- javascript实现端口扫描
- 读书笔记 JavaScript高级程序设计 第三章 基本概念-语法
- json学习篇
- JavaScript数据类型
- JavaScript——递归调用使用arguments.callee
- JavaScript 中对小数取整的常用函数
- jsp路径问题
- JavaScript——作为值的函数
- JavaScript——函数的三种声明方式
- ajax在js下按顺序执行
- JavaScript 命名规则
- Javascript的四种(函数)调用模式
- JavaScript菜鸟教程 grammar
- destoon中隐藏input框的值的设定
- underscorejs-groupBy学习
- underscorejs-sortBy学习