一、赋值运算符
1、算术运算符
算术运算符包含:加(+)、减(-)、乘(*)除(/)和取余(%)。
<script type="text/javascript">
var a = 9;
var b = 2;
console.log(a + b); //加
console.log(a - b); //减
console.log(a * b); //乘
console.log(a / b); //除
console.log(a % b); //取余,即2不能被9整除其值为余数1
</script>
2、自增自减运算符
自增自减运算符包含:++、--、+=、-=、*=、/= 。
<script type="text/javascript">
var a = 9;
var b = 3;
a ++; //等价于 a+1 此时运算结果依然还是9,因为++放在后面等于先取值再运算(即先用后加),故其运算结果为9;
++ b; //此时运算结果是4,因为++放在前面等于先运算再赋值(即先加后用),故其运算结果为4;
a --; //等价于 a-1 此时运算结果是10,因为--放在后面等于先取值再运算(即先用后减),故其运算结果为10;
-- b; //此时运算结果是3,因为--放在前面等于先运算再赋值(即先减后用),故其运算结果为3;
a += b; //等价于 a+b
a -= b; //等价于 a-b
a *= b; //等价于 a*b
a /= b; //等价于 a/b
</script>
注意:++和--放在前面和后面的区别。
二、非等值运算符
非等值运算符包含:>、<、>=、<=。
三、等值运算符
等值运算符包含:==、===。
1、==等值运算符,先转换成相同数据类型,然后进行比较。
1、===等值运算符,先比较数据类型,类型相同在比较值。
<script type="text/javascript">
var a = '1';
var b = 1;
var c = true;
console.log(a == b); //此时返回的值为true
console.log(a == c); //此时返回的值为true
console.log(a === b); //此时返回的值为false
</script>
注意:基本数据类型都会同时向number靠拢。上面例子中变量a的值是一个字符串,变量c的值是个布尔值,将它们同时与变量b进行比对,==会将它们都转化为数字然后进行比较,此处的布尔值true会被转换为1,如果是false将会被转换为0。
四、逻辑运算符
逻辑运算符包括:逻辑与(&&)、逻辑或(||)、逻辑非(!)。
1、逻辑与(&&)
逻辑与需要逻辑运算符两边的表达式同时为true(真),其结果就为true(真)否则即为false(假)。
<script type="text/javascript">
var a = 3;
var b = 1;
var c = 4;
console.log(a < c && a > b); //此时返回的值为true
console.log(a > c && a > b); //此时返回的值为false
</script>
注意:以上例子中,第二次打印因为逻辑运算符左边的表达式为false(假),故其打印的的结果也为false。实际上当其左边的表达式为false时,其右边的表达式便不会再进行运算,这种现象被称为逻辑与的短路现象,在实际应用中常将逻辑与的这种特性应用于分支结构的判断。
2、逻辑或(||)
逻辑或只要逻辑运算符两边的表达式只要有一个为true(真),其整个表达式就为true(真)否则即为false(假)。
<script type="text/javascript">
var a = 3;
var b = 1;
var c = 4;
console.log(a < c || a < b); //此时返回的值为true
</script>
注意:以上例子中,打印因为逻辑运算符左边的表达式为true,所以它整个表达式也为true。实际上当其左边的表达式为true时,其右边的表达式便不会再进行运算,这种现象被称为逻辑或的短路现象,在实际应用中常将逻辑或的这种特性应用于分支结构的判断。
3、逻辑非(!)
用于取与表达式相反的值。
以上内容纯属个人理解,由于水平有限,若有错漏之处敬请指出斧正,小弟不胜感激。
网友评论