数据类型
数值,文本,图形,音频,视频......
变量
var 王者荣耀 = "倔强青铜";
number
js不区分小数和整数,Number
123 // 整数123
123.1 //浮点数123.1
1.123e3 // 科学计数法
-99 // 负数
NaN // not a number
Infinity // 表示无限大
字符串
'abc' "abc"
布尔值
true,false
逻辑运算
&& 两个都为真,结果为真
|| 一个为真,结果为真
! 真即假,假即真
比较运算符(!!!!!!重要!)
=
== 等于(类型不一样,值一样,也会判断为true)
=== 绝对等于(类型一样,值一样,结果为true)
这是一个JS的缺陷,坚持不要使用==比较
须知:
- NAN===NaN,这个与所有的数值都不相等,包括自己
- 只能通过isNaN(NaN)来判断这个数是否是NaN
浮点数问题:
console.log((1/3) === (1-2/3))
尽量避免使用浮点数进行运算,存在精度问题!
Math.abs(1/3-(1-2/3))<0.00000001
null和undefined
- null 空
- undefined 未定义
数组
java的数组必须是相同类型的对象~,JS中不需要这样!
// 保证代码的可读性,尽量使用[]
var arr = [1, 2, 3, 4, 5, 'hello', null, true]
new Array(1, 2, 3, 4, 5, 'hello', null, true)
取数组下标:如果越界了,就会
undefined
对象
对象是大括号,数组是中括号~
| 每个属性之间使用逗号隔开,最后一个不需要添加
// Person person = new Person(1,2,3,4,5);
var person = {
name: 'wsh',
age: 3,
tags: ['js', 'java', 'web', '...']
}
取对象的值
person.name
> "wsh"
person.age
> 3

浙公网安备 33010602011771号