赋值运算符
等号 |
---|
= |
基本运算符
加 | 减 | 乘 | 除 | 取余 | 括号 |
---|---|---|---|---|---|
+ | - | * | / | % | () |
加法的注意事项
字符串的加法:任何数据类型的值加上字符串都是字符串的拼接
1 + 'Tom'; // 1Tom
'Tom' + 1; // Tom1
'Tom' + undefined; // Tomundefined
'Tom' + NaN; // TomNaN
'Tom' + null; // Tomnull
除法的注意事项
NaN
(not a number)是数字类型
0除以0,返回NaN
0/0; // NaN
字符串相除,返回NaN
'a'/'b'; // NaN
NaN与任何东西相除,都返回NaN
1/NaN; // NaN
NaN/NaN; // NaN
NaN/3; // NaN
Infinity和-Infinity是不常见的数字类型
1/0; // Infinity(正无穷,Infinity是数字类型)
-1/0; // -Infinity(负无穷,-Infinity是数字类型)
面试题:用运算交换值
- 中间变量法(常用)
// 交换a,b的值
var a = 1,
b = 3;
var c = a;
b = c; // b =1
a = b; // a =3
- 不使用中间变量(锻炼思维方式)
// 交换a,b的值
var a = 1,
b = 3;
a = a + b;
b = a - b; // b值变为a的值
a = a - b; // a值变为b的值
自增与自减 运算符
注意自增与自减的使用(待补充)
a++
a–
++a
–a
比较运算符
大于 | 大于等于 | 小于 | 小于等于 | 相等 | 全等 | 不相等 | 不全等 |
---|---|---|---|---|---|---|---|
> | >= | < | <= | == | === | != | !== |
数字与字符串比较:字符串会先被转换为数字
字符串与字符串的比较:比较ASCII码(字符相对应的十进制代码)的位置;从左到右,逐位对比
NaN与任何东西都不相等,包括自己:
NaN != NaN ; // true
逻辑运算符
undefined null NaN ‘’ 0 false --> 假
其他都是真
与 | 或 | 非 |
---|---|---|
&& | || | ! |
与逻辑 &&
遇到真,继续走,遇到假或走到最后返回当前值
同为真则真,有一假则假
或逻辑 ||
遇到假,继续走,遇到真或走到最后返回当前值
同为假则假,有一真则真
或逻辑的常见用法
$('.btn').onclick = funcion (e) {
var event = e || window.event;
}
console.log(obj.name || '找不到数据')
非逻辑 !
!1; // false
!!1; // true
// 取反
isShow =!isShow