目: 元素
一目(元)運(yùn)算符
算數(shù)運(yùn)算符
++(前增量/后增量運(yùn)算符)
--(前減量/后減量運(yùn)算符)
+
-
一元加法本質(zhì)上對(duì)數(shù)字無任何影響
···
var sNum = "20";
alert(typeof sNum); //輸出 "string"
var iNum = +sNum;
alert(typeof iNum); //輸出 "number"
···
盡管一元加法對(duì)數(shù)字無作用,但對(duì)字符串卻有有趣的效果,會(huì)把字符串轉(zhuǎn)換成數(shù)字。
void
void 運(yùn)算符對(duì)任何值返回 undefined。該運(yùn)算符通常用于避免輸出不應(yīng)該輸出的值,
要正確做到這一點(diǎn),函數(shù)不能返回有效值,否則瀏覽器將清空頁面,只顯示函數(shù)的結(jié)果。
具體:http://www.w3school.com.cn/js/pro_js_operators_unary.asp
提示:請記住,沒有返回值的函數(shù)真正返回的都是 undefined。
delete
delete 運(yùn)算符刪除對(duì)以前定義的對(duì)象屬性或方法的引用。
delete 運(yùn)算符不能刪除開發(fā)者未定義的屬性和方法。(即原始 ECMAScript 方法)
關(guān)系運(yùn)算符
==(相等) 、!=(不等于)、<(小于) 、>(大于) 、<=(小于或者等于) 、>=(大于或者等于)
**point: **= 和 == 以及 === 的區(qū)別
邏輯運(yùn)算符
&&(與) ||(或) !(非)
補(bǔ):
異或:兩個(gè)條件結(jié)果不同時(shí)(一個(gè)true,一個(gè)false),結(jié)果才為true 暫無表示
二目運(yùn)算符
2個(gè)運(yùn)算元的式子
同上相似演化
三目運(yùn)算符
唯一有3個(gè)操作數(shù)的運(yùn)算符
三目運(yùn)算符的結(jié)合性是右結(jié)合的
對(duì)于條件表達(dá)式b ? x : y,先計(jì)算條件b,然后進(jìn)行判斷。如果b的值為true,計(jì)算x的值,運(yùn)算結(jié)果為x的值;否則,計(jì)算y的值,運(yùn)算結(jié)果為y的值。一個(gè)條件表達(dá)式絕不會(huì)既計(jì)算x,又計(jì)算y。條件運(yùn)算符是右結(jié)合的,也就是說,從右向左分組計(jì)算。例如,a ? b : c ? d : e將按a ? b : (c ? d : e)執(zhí)行。
三目(一層等價(jià)if else)
<表達(dá)式1> ? <表達(dá)式2> : <表達(dá)式3>; "?"運(yùn)算符的含義是:先求表達(dá)式1的值,如果為真,則執(zhí)行表達(dá)式2,并返回表達(dá)式2的結(jié)果;如果表達(dá)式1的值為假,則執(zhí)行表達(dá)式3,并返回表達(dá)式3的結(jié)果。
三目(多層等價(jià)if elseif ... else)——優(yōu)先級(jí)低
從右往左判斷
例如,a ? b : c ? d : e
將按a ? b : (c ? d : e)執(zhí)行。
level = (grade>90) ? "高分飄過" : (grade<60) ? "真雞兒菜,掛科了" : "及格萬歲";