1.语句结束要用分号,如果不用分号,换行符会被默认认为为语句结束标记.
2.中文/$/_等等都可以作为命名的字符开头,但是数字/*/运算符号等等就不可以, js 专用的保留字也是不能用的
3.大括号括起来的叫区块.
4.数据类型:
--数值;
--字符串;
--布尔值;
--undefined;
--null;
--object.狭义的对象/数组/函数
5.typeof xxx
是判断一个变量的类型的,可以看做是一个运算符.
var a=3;
console.log(typeof a);
number
**如果 typeof 3+4;
结果就是 number4
.具体的看下面的
运算符
算数运算符
=加号运算符
=减号运算符(包括 *号)
这种情况就是尽量把字符转成数字,然后计算,这个计算结果就是90.如果是不能转成数字的字符,就会显示 nan,这个规则同样适用于*,却不适用于+
减号运算符
=%余数运算符
console.log(100 % 3)
结果为1
=自增运算符/自减运算符(++/--)
e++
就是e
,如果var e=9; var f = e++;
,结果 f=9 ; e=10
.因为++是一个运算符, f = e ++,在这一步计算时e 还是9
,但是算完后e 再做一个自加,就变成了10
.所以赋值给 f 是9,完事了 e 自加一下变成了10.
但是如果是var e = 9;var g =++e;
则e 的自增发生在赋值之前,因此最后是 e = 11 ; g = 11
b = a++ 相当于 b = a; a++
=求负运算符(-)
在数字前面加上-号,将数字变成负数
赋值运算符
赋值运算符比较运算符
var a = 3;var b = '3';console.log(a==b)
true, 这是一个比较粗略的比较,更精确的会使用===
此时就会不相等了
布尔运算符
!
取反运算符
-!1
-false
&&
且运算符
-true&&false
-false
-true&&true
-true
||
或运算符
condition? true case : false case
三元条件运算符.
-当condition
为true
则套用true case
, 反之则 fales case
运算符优先级
-
typeof
优先级最高.
typeof 2*3;
//NaN
typeof (2*3);
//"number"
typeof 2+3;
//"bumber3"
2.,
也是运算符.
c=(a=3,b=4)
则 结果为4
.逗号是不看第一个的结果的,这个式子只是把 b 赋值给 c.
3.a+++b
=7.
a++
的优先级大于++b
,所以是(a++)+b
而不是a+(++b)
true or false
直接判断字符类型的 trf举例
if(+0){
console.log('haha')
}
//undefined
因为+0为 false,
所以 console.log不会输出 haha,
没有规定 false 的输出,
便直接输出 undefined.
网友评论