ECMAScript数据类型包括5种基本数据类型(简单数据类型或原始类型)和 1种复杂数据类型。
5种基本数据类型包括未定义类型(undefined )、空类型(null)、布尔类型(boolean )、数值型(number )和字符串类型(string)。
1中复杂数据类型为对象类型(object)。
Undefined类型
Undefined类型只有一个值undefined。在进行相关变量定义的时候,未赋值的情况下,默认是赋值为undefined了。
var index ;
console.log(index); // undefined
console.log(typeof index); // "undefined"
null类型
null类型的值只有唯一一个特殊值null,null值表示空对象指针。
null是特殊的对象类型:object
只有变量被赋予null时,才会显示null。
var a = null;
console.log(a); // null
console.log(typeof a); // object
undefined值派生于null,故:
console.log( undefined == null ) ; // true
Boolean类型
Boolean类型的值只有两个:true真 \ false 假
将布尔值的true和false转换为数值的话,可以用1和0数字表示。
console.log( true == 1); // true
console.log( false == 0); // true
0、null、undefined、" "、false、NaN都为false。
Number类型
用来表示整数值和浮点数值(即带小数点的值)。
NaN:Not a Number,意为不是一个数字。
NaN的特点:
- 任何涉及
NaN的操作都会返回Na。 -
NaN与任何值都不相等,包括NaN本身。 - alert( NaN == NaN ) //false
isNaN:判断参数是否“不是一个数值”,如果是数值则false,如果不是数值则true。
数值转换:
Number()
parseInt() // 从第一位起取到整数部分
parseFloat() // 提取变量第一个小数点后面的值
例如:
console.log(isNaN(NaN)); // true
console.log(isNaN(10)); // false
console.log(isNaN('10'); // false , '10'会被转化为10
console.log('blue'); // true , 不能转化为数值
console.log(true); // false, 可被转化为数值1
String类型
字符串类型由双引号或者单引号表示。
将数字类型或对象类型转换成字符串类型,那么我们可以直接使用toString()方法进行操作啦。
查看字符串长度:length属性
var str = "hello world";
console.log(str.length); // 11
查看字符串相应位置的字符
var str = "hello world";
console.log(str[1]); // e
Object类型
ECMAScript中的对象其实就是一组数据和功能的集合。
var o = {}; \\对象字面量方法创建
var o = new Object(); \\构造函数方法创建
typeof 的类型
有6种类型:Boolean 、String、Object、Number、Function、Undefined
console.log( typeof aa);