JavaScript之数据类型

来源:互联网 发布:网络兼职业务员 编辑:程序博客网 时间:2024/05/22 07:05

来自廖雪峰的JavaScript教程

Number

JavaScript不区分整数和浮点数,统一用Number表示,以下都是合法的Number类型:

123; // 整数1230.456; // 浮点数0.4561.2345e3; // 科学计数法表示1.2345x1000,等同于1234.5-99; // 负数NaN; // NaN表示Not a Number,当无法计算结果时用NaN表示Infinity; // Infinity表示无限大,当数值超过了JavaScript的Number所能表示的最大值时,就表示为Infinity

字符串

JavaScript中字符串是用单引号‘或双引号“括起来的任意文本

布尔值

比较运算符

第一种是==比较,它会自动转换数据类型再比较,很多时候,会得到非常诡异的结果;

第二种是===比较,它不会自动转换数据类型,如果数据类型不一致,返回false,如果一致,再比较。

另一个例外是NaN这个特殊的Number与所有其他值都不相等,包括它自己:

NaN === NaN; // false

唯一能判断NaN的方法是通过isNaN()函数:

isNaN(NaN); // true

null和undefined

null表示一个“空”的值,它和0以及空字符串”不同,0是一个数值,”表示长度为0的字符串,而null表示“空”。

在JavaScript中,还有一个和null类似的undefined,它表示“未定义”。

大多数情况下,我们都应该用null。undefined仅仅在判断函数参数是否传递的情况下有用。

数组

JavaScript的数组可以包括任意数据类型。例如:

[1, 2, 3.14, 'Hello', null, true];

另一种创建数组的方法是通过Array()函数实现:

new Array(1, 2, 3); // 创建了数组[1, 2, 3]

对象

JavaScript的对象是一组由键-值组成的无序集合

var person = {    name: 'Bob',    age: 20,    tags: ['js', 'web', 'mobile'],    city: 'Beijing',    hasCar: true,    zipcode: null};

补充:

数组的扩展

扩展运算符是三个点...

var arr = [1,2,3];console.log(arr);    //[ 1, 2, 3 ]console.log(...arr); //1 2 3

扩展运算符将数组变成 参数序列 传递

function add(x, y) {  return x + y;}var numbers = [4, 38];add(...numbers) // 42