一/二/三目运算符 算数 关系 逻辑
目: 元素
++(前增量/后增量运算符)
--(前减量/后减量运算符)
+
-
一元加法本质上对数字无任何影响
···
var sNum = "20";
alert(typeof sNum); //输出 "string"
var iNum = +sNum;
alert(typeof iNum); //输出 "number"
···
尽管一元加法对数字无作用,但对字符串却有有趣的效果,会把字符串转换成数字。
void 运算符对任何值返回 undefined。该运算符通常用于避免输出不应该输出的值,
要正确做到这一点,函数不能返回有效值,否则浏览器将清空页面,只显示函数的结果。
具体: http://www.w3school.com.cn/js/pro_js_operators_unary.asp
提示: 请记住,没有返回值的函数真正返回的都是 undefined。
delete 运算符删除对以前定义的对象属性或方法的引用。
delete 运算符不能删除开发者未定义的属性和方法。(即原始 ECMAScript 方法)
==(相等) 、!=(不等于)、<(小于) 、>(大于) 、<=(小于或者等于) 、>=(大于或者等于)
**point: **= 和 == 以及 === 的区别
&&(与) ||(或) !(非)
补:
异或:两个条件结果不同时(一个true,一个false),结果才为true 暂无表示
2个运算元的式子
同上相似演化
唯一有3个操作数的运算符
对于条件表达式b ? x : y,先计算条件b,然后进行判断。如果b的值为true,计算x的值,运算结果为x的值;否则,计算y的值,运算结果为y的值。一个条件表达式绝不会既计算x,又计算y。条件运算符是右结合的,也就是说,从右向左分组计算。例如,a ? b : c ? d : e将按a ? b : (c ? d : e)执行。
<表达式1> ? <表达式2> : <表达式3>; "?"运算符的含义是:先求表达式1的值,如果为真,则执行表达式2,并返回表达式2的结果;如果表达式1的值为假,则执行表达式3,并返回表达式3的结果。
从右往左判断
例如,a ? b : c ? d : e
将按a ? b : (c ? d : e)执行。
level = (grade>90) ? "高分飘过" : (grade<60) ? "真鸡儿菜,挂科了" : "及格万岁";