变量
1
2
3
4
5
6
7
8
9
10var 王者农药 = 倔强青铜; //可以中文命名
i = 1;
//少用全局变量!
var i = 1;
// es6 局部变量推荐let定义
let i = 1;
//严格检查模式, 预防js的随意性导致的问题 ;number
js不区分小数和整数
1 | 123 |
字符串
1
2
3
4
5
6
7
8
9
10
11
12'abc' //长字符串, 两个单引号可以不在同一行,
"abc"
'a\'' //转义字符
let name = "qp"; //string的不可变性, 虽然可以name[1]取一个字符, 但不能改变
let msg = '你好, ${name}'
str.length
//大小写转换使用方法
str.toUpperCase()
str.toLowerCase()
indexOf()
substring()
等等等等等方法布尔值
true/false逻辑运算
1
2
3&&
||
!比较运算符
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26=
== //等于(类型不一样, 值一样, 也是true)
=== //绝对等于(类型和值都一样)
NaN === NaN //返回false!
//只能通过isNaN(NaN)来判断这个数是否是NaN
```
//浮点数不要直接比较, 精度损失!
Math.abs(1/3 - (1 - 2/3)) < 0.00000001
6. null 和 undefined
null 空值
undefined 未定义
7. 数组
java的数组必须是相同类型的对象, js不需要这样, 类似py
var arr[1, 2, 3, 'world', null, true];
new Array(1, 2, 3, 'hello');
取数组下标越界了, 就会undefined
8. 对象
对象是大括号, 数组是中括号
```js
var person = {
}