在JavaScript中,不区分整型和浮点型。例如
1 //整数
1.1 //浮点数
0.232e4 //科学计数法 等同于0.232×10000
-23 //负数
NaN //not a number ,表示结果无法集散
Infinity //无限大 超出Number的取值范围
两个例子
2 / 0 = Infinity
0 / 0 = NaN
和所有语言一样,布尔类型只有两种取值,true和false
true //true
false //false
2 > 1 //true
2 < 1 //false
跟布尔类型密切相关的是与或非三种运算
运算符 &&
true && true //true
true && false //false
false && false //false
运算符 ||
true || true //true
true || false //true
false || false //false
运算符 !
!true //false
!false //true
字符串是使用单引号’或者双引号”括起来的任意文本
例如'android'
"ios"
但是''
或者""
本身并不是字符串的一部分
数组是一串按照顺序排列的元素的集合,例如:
[1, 2, 3, 4, 6, 7]
[23, 54, 54, '12', 'adc']
['12', '23', 'av', {a:b,c:d}, [1, 2]]
创建数组的两种方法
- var arr = new Array('a', 'c', 'd')
- var arr = ['a', 'c', 'd']
推荐使用第二种方法,该方法申明的数组可读性更好
由key-value组成的无序集合
var company = {
google: 'android',
apple: 'ios',
microsoft: ['office', 'windows', 'vs'],
facebook: 'facebook',
beijing: true,
money: null
}
company.google //'android'
company.microsoft //['office', 'windows', 'vs']
company.monet //null
var company = {...}
company['china'] = '1949'
console.log(company)
结果
{
apple: "ios"
beijing: true
china: "1949"
facebook: "facebook"
google: "android"
microsoft: ["office", "windows", "vs"]
money: null
}
null是什么都么有,空的,和0
以及空字符串null
都不同
undefined是未定义
两者的区别未见啥大的意义,一般情况下,都应该使用null,undefined可用于判断参数是否传递,未传递则为undefined
一个生动形象的例子