JavaScript数据类型
number类型:
不区分小数和整数,Number
666 //整数
666.6 //浮点数
1.23e4 //科学计数法
-66 //负数
NaN //not a number
Infinity //表示无限大
字符串:
'abc' "abc"
布尔值:
true false
逻辑运算:
&& 两个都为真,结果为真
|| 一个为真,结果为真
! 假就是真,真就是假
比较运算符:
=
== 等于(类型可以不一样,只需要值一样,就会判断为true)
=== 绝对等于(要求类型一样,值一样,结果为true)
尽量不用==,用===
须知:
NaN===NaN,结果为false,这个与所有的数值都不相等,包括自己(因为NaN本身就不是一个数)
只能通过 isNaN(NaN) 来判断这个数是否是NaN
浮点数问题:
console.log((1/3) === (1-2/3))
结果返回为false
尽量避免使用浮点数进行运算,存在精度问题
NULL和undefined的区别:
null是定义了未赋值
undefined是没有定义
数组:
Java的数组必须是相同类型的对象,但是在JS中不需要,可以是任意类型的数据
//保证代码的可读性,尽量使用[]
var arr = [1,2,3,4,5,'hello',null,true];
new Array(1,12,3,4,5,'hello');
取数组下标,如果越界了,机会返回undefined
对象:
对象是大括号,数组是中括号