JavaScript-操作符

操作操作符榔昔,也叫運算符 operator ,是 js 中發(fā)起運算最簡單的方式瘪菌,例如:5 + 6 撒会。
表達式(expression) 的組成包含操作數(shù)和操作符,表達式會得到一個結(jié)果师妙,然后用結(jié)果參與程序诵肛。

算術(shù)運算符

算術(shù)運算符:+ - * / % ()
%:取余,取模默穴。 a / b = c 余 d怔檩,就說a % b = d。 運算順序:先算乘除取余蓄诽、再算加減薛训,有小括號先算小括號。
正常情況是數(shù)字與數(shù)字之間的運算直接得出結(jié)果仑氛,但有另外兩種非正常情況:

  1. 有特殊值字面量參與的運算乙埃。
    NaN參與的運算:得到的結(jié)果都是NaN闸英;
    Infinity參與的運算,視情況而定介袜。
  2. 其他類型的數(shù)據(jù)參與數(shù)學運算甫何。
    有字符串參與的 + 運算:+ 號變?yōu)檫B字符將前后連接成整體字符串。
    隱式轉(zhuǎn)換:除了字符串參與的 + 運算米酬,其他情況下沛豌,所有其他數(shù)據(jù)類型參與數(shù)學運算時,計算機暗中將其他數(shù)據(jù)類型先自動轉(zhuǎn)換成數(shù)字類型赃额,再參與運算,這個過程中不需要使用parseInt()叫确、Number() 等方法跳芳,過程是暗中進行,這就是一個隱式轉(zhuǎn)換的過程竹勉。
    ? 對應數(shù)字:純數(shù)字字符串會轉(zhuǎn)為對應的數(shù)字”123”→123
    ? 轉(zhuǎn)換為1: true
    ? 轉(zhuǎn)換為0:false飞盆、null、“”空字符串次乓、空白字符串
    ? 轉(zhuǎn)換為NaN:undefined吓歇、非空非純數(shù)字字符串

比較運算符

比較運算符也叫作關(guān)系運算符。一個比較運算符 comparison operator 比較它的操作數(shù)并返回一個布爾類型值票腰。運算結(jié)果要么是true城看,要么是false。

符號 說明
> 大于
< 小于
>= 大于等于
<= 小于等于
== 相等杏慰,只判斷值大小是否相等测柠,不判斷數(shù)據(jù)類型
!= 不等,與相等完全相反
=== 全等缘滥,不光判斷值相等轰胁,還要判斷數(shù)據(jù)類型相等
!== 不全等,與全等于完全相反

正常情況是數(shù)字與數(shù)字之間的比較直接得出結(jié)果朝扼,但有另外三種非正常情況:

  1. 特殊值參與比較運算
    ? NaN參與:不等于和不全等于結(jié)果是 true赃阀,其他的都得到 false。
    ? Infinity參與的運算擎颖,視情況而定榛斯。
  2. 其他數(shù)據(jù)類型參與比較運算(排除字符串與字符串的比較)
    ? 其他數(shù)據(jù)類型也會隱式轉(zhuǎn)換為數(shù)字參與比較〕σ牵“123”→123肖抱、 true→1、 false→0异旧、 null→0意述、 undefined→NaN、 “”→0 、“abc”→NaN荤崇。
    ? null 的判斷比較特殊:null 與 0 判斷時拌屏,相等判斷為 false;>= 和 <= 判斷為 true术荤;null == undefined倚喂。
  3. 字符串與字符串比較
    ? 不會發(fā)生隱式轉(zhuǎn)換為數(shù)字,而是比較兩個字符串的 Unicode 編碼順序瓣戚。
    ? 字符編碼順序:從前往后 0-9端圈,A-Z,a-z子库,前面的小于后面的舱权。
    ? 比較時,不關(guān)心兩個字符串的長度仑嗅,從第一個字符開始比較宴倍,依次往后順延比較,直到比較出大小仓技,就不再往后比較鸵贬。

邏輯運算符

邏輯運算符常用于布爾類型值之間; 當操作數(shù)都是布爾值時,返回值也是布爾值脖捻。

符號 說明
&& 邏輯與運算符 (同真才真阔逼,一假則假)
|| 邏輯或運算符(同假才假,一真則真)
! 邏輯非運算符

布爾類型的值參與運算郭变,返回值為布爾值颜价。
除了布爾類型的值之外,其他數(shù)據(jù)類型的值也可以參與邏輯運算诉濒。運算過程中需要將操作數(shù)隱式轉(zhuǎn)換為布爾類型的值周伦,參與判斷計算,最終運算結(jié)果還是原來的某個位置的數(shù)據(jù)未荒。并不是所有邏輯運算返回結(jié)果都是布爾值专挪,其他數(shù)據(jù)參與得到的就是數(shù)據(jù)本身。

  • 隱式轉(zhuǎn)換為布爾值的規(guī)律
    轉(zhuǎn)為false:NaN片排、0寨腔、“”空字符串、null率寡、undefined
    轉(zhuǎn)為true:非0 非NaN數(shù)字迫卢、非空字符串
    當它們用于非布爾值的時候,返回值就可能是非布爾值冶共。其實這種運算非常簡單乾蛤,就兩句話:(邏輯與 a&&b ) 如果a能被轉(zhuǎn)換為false每界,那么返回a;否則家卖,返回b眨层。(邏輯或 a ||b ) 如果a能被轉(zhuǎn)換為true,那么返回a上荡;否則趴樱,返回b。

同種運算符從前往后運算酪捡。綜合運算順序:非叁征、與、或逛薇。


賦值運算符

賦值運算符必須有變量參與運算航揉,賦值運算符會做兩件事情:
第一,將變量中原始值參與對應數(shù)學運算金刁,與右側(cè)的數(shù)據(jù)。
第二议薪,將運算結(jié)果再重新賦值給變量尤蛮。
變量位于操作符的左側(cè)。

符號 說明
= 等于
+= 加等于
-= 減等于
*= 乘等于
/= 除等于
%= 取余等于
++ 遞加
-- 遞減

一元運算符

++-- 也叫一元運算符斯议,只有一個操作數(shù)产捞。
++-- 符號可以寫在變量前和變量后面,位置不同可能導致程序運行結(jié)果不同哼御。
++ 為例:

  • a++: ++ 符號在變量之后坯临,a++ 在參與程序過程中使用的原始沒有加 1 的值,使用完后第二次用 a 變量時恋昼,a 用的就是加 1 后的新值看靠。先參與,后自加液肌。
  • ++a:++ 符號在變量之前挟炬,++a 在參與過程中整體就使用 a 加 1 之后的新值,使用完后第二次用 a 變量時嗦哆,a 用的也是加 1 的新值谤祖。先自加,后參與老速。

運算符優(yōu)先級

運算優(yōu)先級也可以叫綜合運算順序粥喜。
優(yōu)先級從高到低:

  1. () 優(yōu)先級最高
  2. 一元運算符 ++ -- !
  3. 算數(shù)運算符 先* / % 后 + -
  4. 關(guān)系運算符 > >= < <=
  5. 相等運算符 == != === !==
  6. 邏輯運算符 先&& 后||
  7. 賦值運算符
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
禁止轉(zhuǎn)載,如需轉(zhuǎn)載請通過簡信或評論聯(lián)系作者橘券。
  • 序言:七十年代末额湘,一起剝皮案震驚了整個濱河市卿吐,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌缩挑,老刑警劉巖但两,帶你破解...
    沈念sama閱讀 218,546評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異供置,居然都是意外死亡谨湘,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,224評論 3 395
  • 文/潘曉璐 我一進店門芥丧,熙熙樓的掌柜王于貴愁眉苦臉地迎上來紧阔,“玉大人,你說我怎么就攤上這事续担∩玫ⅲ” “怎么了?”我有些...
    開封第一講書人閱讀 164,911評論 0 354
  • 文/不壞的土叔 我叫張陵物遇,是天一觀的道長乖仇。 經(jīng)常有香客問我,道長询兴,這世上最難降的妖魔是什么乃沙? 我笑而不...
    開封第一講書人閱讀 58,737評論 1 294
  • 正文 為了忘掉前任,我火速辦了婚禮诗舰,結(jié)果婚禮上警儒,老公的妹妹穿的比我還像新娘。我一直安慰自己眶根,他們只是感情好蜀铲,可當我...
    茶點故事閱讀 67,753評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著属百,像睡著了一般记劝。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上诸老,一...
    開封第一講書人閱讀 51,598評論 1 305
  • 那天隆夯,我揣著相機與錄音,去河邊找鬼别伏。 笑死蹄衷,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的厘肮。 我是一名探鬼主播愧口,決...
    沈念sama閱讀 40,338評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼类茂!你這毒婦竟也來了耍属?” 一聲冷哼從身側(cè)響起托嚣,我...
    開封第一講書人閱讀 39,249評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎厚骗,沒想到半個月后示启,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,696評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡领舰,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,888評論 3 336
  • 正文 我和宋清朗相戀三年夫嗓,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片冲秽。...
    茶點故事閱讀 40,013評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡舍咖,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出锉桑,到底是詐尸還是另有隱情排霉,我是刑警寧澤,帶...
    沈念sama閱讀 35,731評論 5 346
  • 正文 年R本政府宣布民轴,位于F島的核電站攻柠,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏后裸。R本人自食惡果不足惜辙诞,卻給世界環(huán)境...
    茶點故事閱讀 41,348評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望轻抱。 院中可真熱鬧,春花似錦旦部、人聲如沸祈搜。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,929評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽容燕。三九已至,卻和暖如春婚度,著一層夾襖步出監(jiān)牢的瞬間蘸秘,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,048評論 1 270
  • 我被黑心中介騙來泰國打工蝗茁, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留醋虏,地道東北人。 一個月前我還...
    沈念sama閱讀 48,203評論 3 370
  • 正文 我出身青樓哮翘,卻偏偏與公主長得像颈嚼,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子饭寺,可洞房花燭夜當晚...
    茶點故事閱讀 44,960評論 2 355

推薦閱讀更多精彩內(nèi)容