JavaScript的数据类型
来源:互联网 发布:淘宝店铺抽奖活动设置 编辑:程序博客网 时间:2024/06/06 02:44
《JavaScript高级程序设计》
1)ECMAScript不支持自定义类型,只有6中数据类型:
5种基本数据类型(简单数据类型)
Undefined未定义"undefined"
var a ;
var a = "undefined";//不做
Null空引用数据类型 "null"
var a = null;
Boolean布尔类型 true/false
var a = false;
Number数字类型
var a = 10;
String字符串类型 "" ''
var a ="hello";
var a ='hello';
1种引用数据类型(复杂数据类型)
Object(本质由一组无序的键值对组成)
var person= new Object();
person.name = "terry";
person.age = 12;
2) typeof 操作符
返回该变量名所指向数据的类型
语法:
typeof 变量名
可有取值如下
"undefined"未定义
"boolean"布尔类型
"string"字符串
"number"数值
"object"对象或者null
"function"函数
3) 基本数据类型
1. Undefiend
该类型只有一个值undefined。对未声明和未初始化的变量执行typeof操作符都返回undefined
var a;
console.log(a);// undefined
console.log(typeof a);// undefined
console.log(b);//ReferenceError: b is not defined
console.log(typeof b);// undefined
2. Null类型
该类型只有一个值 null ,null可以表示一个空对象的指针。
var car = null;
console.log(typeof car )//object null被认为是空对象的引用
【使用情景】
如果一个变量准备将来保存对象,可以将该变量初始化null而不是其他,这样可以通过检查null值就可以知道相应的变量是否已经保存了一个对象的引用。
if(car !=null ){
//car对象执行某些操作
}
实际上 undefined 派生自null值。undefined == null 结果为 true
null与undefined用途不同,null可以用来表示一个空对象,但是没有必要把一个变量的值显式设置为undefined
3. Boolean类型
该类型只有两个值,true,false虽然boolean类型的取值只有两个,但是ECMAScript中所有的类型的值都有与这两个Boolean值等价的值
4. Number
该类型用来表示整数和浮点数
1) 表示方法:
1. 整数:
十进制数: 550~9
八进制数: 首位为0,其他位为(0~7 如果字面值超出了范围,前导0将会被忽略)
070 (表示 7*8一次方 = 56)
079(超过了范围,表示79)
十六进制: 前两位为0x,其他位为(0~9,A~F)
2. 浮点数
所谓浮点数值,就是该数值中必须包含一个小数点,并且小数点后必须至少有一位数字。浮点数值的最高精度是17位小数。
例如:var f = 1.2;
科学计数法:e
var e = 3.125e7;//31250000
2) 数值范围
由于内存的限制,ECMAScript不能保存世界上所有的数值。ECMAScript能表示的最小数值保存在Number.MIN_VALUE中,能表示的最大的数值保存在Number.MAX_VALUE中。如果某次计算的结果超过了JavaScript数值范围,将会返回Infinity(正无极)或者-Infinity(负无极)使用 isFinite()函数可以判断参数是否在最大值和最小值之间,如果在,返回true
在绝大数浏览器中:
Number.MIN_VALUE : 5e-324
Number.MAX_VALUE :1.7976931348623157e+308
如果某次计算返回了正的或者负的Infinity,那么该值无法继续参与下一次计算。可以使用isFinite(para)函数判断para 是否在最大数最小数之间
3) 非数值 NaN (not a number)
该数值表示一个本来要返回数值的操作数未返回数据的情况。
var a = 10/'a';
console.log(a);//NaN
任何涉及到NaN的操作都会返回NaN; NaN与任何值都不相等,包括NaN本身。
isNaN,判断参数是否“不是数值”,当参数para不是数值的时候返回true
isNaN(NaN);true
isNaN("blue");true无法转换为数值
isNaN(10);false10
isNaN("10");false10
isNaN(true);false
注意:
1) 默认情况下,ECMAScript会将小数点后带有6个零以上的浮点数转化为科学计数法。
0.0000003 => 3e-7
2) 在进行算术计算时,所有以八进制十六进制表示的数值都会被转换成十进制数值。
3) 保存浮点数需要的内存是整数的两倍,因此ECMAScript会不失时机将浮点转换为整数
例如:
var a = 1.;
var b = 1.0; 都将解析为1
4) 避免测试某个特点的浮点数值,是使用IEEE754数值的浮点计算的通病
例如:0.1+0.2结果不是0.3,而是0.30000000000000004
5. String
该类型表示由零个或者多个16位Unicode字符组成的字符序列,即字符串。字符串可以由双引号或者单引号表示
1)字符字面量
\n换行
\t制表
\b退格
\r回车
\\斜杠
\'单引号
\"双引号
2)字符长度
通过length属性获取字符长度
6. Object
ECMAScript中的对象其实就是一组数据和功能的集合。对象可以通过执行"new 对象类型"来创建。
var o = new Object();
Object类型是所有它的实例的基础,换句话说,Object类型所具有的任何属性和方法,同样存在于更具体的对象。
constructor:保存用户创建当前对象的函数
hasOwnProperty(propertyName);用于检查给定的属性是否在当前对象实例中
isPrototypeOf(object);用于检查传入的对象是否是原型
propertyIsEnumerable(propertyName);用于检查给定的属性在当前对象实例中是否存在
toLocaleString();返回对象的字符串表示,该字符串与执行环境的地区对应
toString();返回对象的字符串表示
valueOf();返回对象的字符串,数值,布尔值的表示。
阅读全文
0 0
- JavaScript 的数据类型
- javascript数据类型的转换
- JavaScript的数据类型
- Javascript的简单数据类型
- javascript的数据类型
- javascript的数据类型
- 判断JavaScript的数据类型
- Javascript的简单数据类型
- JavaScript的数据类型判定
- javascript的数据类型
- javascript的数据类型
- javascript的数据类型
- JavaScript的基本数据类型
- JavaScript的基本数据类型
- JavaScript的数据类型
- JavaScript的数据类型详解
- JavaScript的数据类型
- javascript 的数据类型
- MyEclipse安装教程以及配置server和运行起来
- 顺序表应用6:有序顺序表查询
- javascript简介,什么是 JavaScript?,JS的特征,开发环境
- 如何在页面中引入JS教程
- JavaScript的语法
- JavaScript的数据类型
- JavaScript的类型转换
- ◇lx
- JavaScript的操作符
- windows下配置caffe的python接口(CPU and GPU)
- JavaScript的流程控制语句
- JavaScript的循环语句
- JavaScript的对象介绍和常用内置对象介绍
- JavaScript的自定义对象