Get Started
- 算数运算符
string运算 - 比较运算符
void
逗号运算符
运算顺序 - 逻辑运算符
算数运算符
JavaScript 共提供10个算术运算符,用来完成基本的算术运算。
• number运算
加法运算符:x + y
减法运算符: x - y
乘法运算符: x * y
除法运算符:x / y
指数运算符:x ** y
余数运算符:x % y
自增运算符:++x 或者 x++
自减运算符:--x 或者 x--
数值运算符: +x
负数值运算符:-x
• 注意:
var a=5
>undefined
a++
>5
++a
>7
a
>7
尽量少用自增和自减
a += 1
只在for循环中使用i++
• string运算
关于字符串的运算符只有字符串1+字符串2=字符串12
除了+之外的计算都会把字符串变成数字然后计算
比较运算符
JavaScript 一共提供了8个比较运算符。
> 大于运算符
< 小于运算符
<= 小于或等于运算符
>= 大于或等于运算符
== 相等运算符
=== 严格相等运算符
!= 不相等运算符
!== 严格不相等运算符
这八个比较运算符分成两类:相等比较和非相等比较。两者的规则是不一样的,对于非相等的比较,算法是先看两个运算子是否都是字符串,如果是的,就按照字典顺序比较(实际上是比较 Unicode 码点);否则,将两个运算子都转成数值,再比较数值的大小。
void
作用是执行一个表达式,然后不返回任何值,或者说返回undefined。
• 写法
void 0 // undefined
void(0) // undefined
因为void运算符优先度很高,最好记上括号
• 例
<script>
function f() {
console.log('Hello World');
}
</script>
<a href="http://example.com" onclick="f(); return false;">点击</a>
这个运算符的主要用途是浏览器的书签工具(Bookmarklet),以及在超级链接中插入代码防止网页跳转。
• ↓用void取代上面的写法
<a href="javascript: void(f())">文字</a>
逗号运算符
用于对两个表达式求值,并返回后一个表达式的值。
• 例1
'a', 'b' // "b"
var x = 0;
var y = (x++, 10);
x // 1
y // 10
• 逗号运算符的一个用途是,在返回一个值之前,进行一些辅助操作。
• 例2
var value = (console.log('Hi!'), true);
// Hi!
value // true
上面代码中,先执行逗号之前的操作,然后返回逗号后面的值。
运算顺序
优先级
JavaScript 各种运算符的优先级别(Operator Precedence)与C类似,计算时要加圆括号。
左结合与右结合
JavaScript 语言的大多数运算符是“左结合”,少数运算符是“右结合”,其中最主要的是赋值运算符(=)、三元条件运算符(?:)和指数运算符(**)。
• 例
w = (x = (y = z));
q = a ? b : (c ? d : (e ? f : g));
JS中的逻辑运算符&&、||,位运算符|,&
1、JS中的||符号:
运算方法:
只要“||”前面为false,不管“||”后面是true还是false,都返回“||”后面的值。
只要“||”前面为true,不管“||”后面是true还是false,都返回“||”前面的值。
总结:真前假后
2、JS中的&&符号:
运算方法:
只要“&&”前面是false,无论“&&”后面是true还是false,结果都将返“&&”前面的值;
只要“&&”前面是true,无论“&&”后面是true还是false,结果都将返“&&”后面的值;
总结:假前真后
弄懂了以上说的还应该知道:
js的6个蛋蛋:在js逻辑运算中,0、”“、null、false、undefined、NaN都会判为false,其他都为true。
注意点
Numer String Boolean三个对象永远不要用