摘要:運(yùn)算符的概述提供了一組用于操作數(shù)據(jù)值的運(yùn)算符,又可以稱(chēng)之為操作符,這些運(yùn)算符可以按照作用的不同,或者操作變量數(shù)量的不同進(jìn)行分類(lèi)。
運(yùn)算符的概述
JavaScript提供了一組用于操作數(shù)據(jù)值的運(yùn)算符,又可以稱(chēng)之為操作符,這些運(yùn)算符可以按照作用的不同,或者操作變量數(shù)量的不同進(jìn)行分類(lèi)。
1.算數(shù)運(yùn)算符的基本操作比較簡(jiǎn)單,但我們需要注意以下的幾種情況;*如果運(yùn)算數(shù)中的一個(gè)或者兩個(gè)字符串類(lèi)型,那么JavaScript會(huì)自動(dòng)轉(zhuǎn)換為數(shù)字值,再進(jìn)行計(jì)算。 如果運(yùn)算數(shù)中的一個(gè)或兩個(gè)是字符串類(lèi)型,但是其中的字符串不是數(shù)字,JavaScript會(huì)自動(dòng)轉(zhuǎn)換數(shù)字值 ,得到NaN結(jié)果 任何一個(gè)運(yùn)算數(shù)是NaN,結(jié)果都是NaN。 布爾值false和true會(huì)轉(zhuǎn)換為0和1進(jìn)行計(jì)算*2.運(yùn)算符 加減以及求余,自增的用法
var num = 50 ; var str1 = "范甘迪"; var str2 = "200"; var boo = true; //加法num 數(shù)字加法就是數(shù)字相加 var a1 = num+200 console.log(a1) //如果是字符串進(jìn)行相加的話(huà),結(jié)果就是將兩個(gè)字符串相連接 var a2 = str1+200 console.log(a2) //如果布爾類(lèi)型進(jìn)行加法計(jì)算,先將布爾值轉(zhuǎn)換為數(shù)字值,再進(jìn)行加法計(jì)算 var a3 = boo+200 console.log(a3)
//如果字符串進(jìn)行減法計(jì)算的話(huà) 那么先將字符串類(lèi)型轉(zhuǎn)換為數(shù)字值,再進(jìn)行減法計(jì)算 var a4 =str1-50 console.log(a4) //減法,先將其他類(lèi)型轉(zhuǎn)換為number類(lèi)型,再進(jìn)行計(jì)算 var a4 = num -100 console.log(a4) //如果布爾類(lèi)型進(jìn)行減法計(jì)算,那么先將布爾類(lèi)型轉(zhuǎn)換為數(shù)字值,再進(jìn)行減法計(jì)算 var a5 = boo-50 console.log(a5) //自增運(yùn)算符是來(lái)操作當(dāng)時(shí)變量的值;每一次自增+1 /*有兩種自增方案 1前置自增運(yùn)算符++變量名 ,先增加后賦值. 2后置自增運(yùn)算符-變量名++,先賦值再自增 * */ var num = 10; console.log(num);//10 var a1 = ++num; console.log(a1);//11 console.log(num);//11 var a1 = num++; console.log(a1);//11 console.log(num);//12
運(yùn)算符的有限級(jí)別
* 運(yùn)算符的優(yōu)先級(jí)別 * 運(yùn)算法則是先運(yùn)算優(yōu)先級(jí)別較高的運(yùn)算符 * 如果運(yùn)算的級(jí)別相同的話(huà)則從左至右計(jì)算 `console.log(1+2-3*4) //-9 乘法優(yōu)先級(jí)別更高所以先運(yùn)算乘法再?gòu)淖蟮接疫\(yùn)算 console.log(5+50%3)//7 余數(shù)的優(yōu)先級(jí)高 console.log(2*4%2)//余數(shù)與乘法優(yōu)先級(jí)一樣高所以自左到右計(jì)算 var num = 2; console.log(5*++num)//前置自增優(yōu)先級(jí)更高
//大于小于比較運(yùn)算符 大小比較運(yùn)算符的結(jié)果類(lèi)型為布爾類(lèi)型 /* * 1num類(lèi)型*/ console.log(1>2)//false因?yàn)?小于2 所以結(jié)果為false假 console.log(1<2)//true 1小于2 是正缺的所以結(jié)果為true console.log(1<=2)//true //booean類(lèi)型比較運(yùn)算;先將Boolean類(lèi)型轉(zhuǎn)換為number類(lèi)型 console.log(true>false)//true true=1 false=0 //string類(lèi)型 將string轉(zhuǎn)換為Unicode碼然后進(jìn)行比較 //若比較的是英文單詞那么 從左至右字母依次比較Unicode碼進(jìn)行比較 console.log("a"<"b")//true console.log("adc">"asc")//false console.log("和"<"打")//true
相等與不等運(yùn)算符
/*相等與不相等運(yùn)算符 * 兩個(gè)== 表示相等; 不等則是!=表示*/ console.log(1==2)//false1不等于2所以結(jié)果為false console.log(1!=2)//true 1不等于2 縮減結(jié)果為true //boolea類(lèi)型 console.log(true==true)//true console.log(false!=true)//true console.log(false==3)//false //string 類(lèi)型 console.log("s"=="s" )//true console.log("d"!="我")//true console.log("213"==213)//true只比較其數(shù)值不比較類(lèi)型
全等與不全等運(yùn)算符;
//全等不全等,不但不叫值還比較類(lèi)型 console.log(1 === 10);// true console.log("10" === 10);// false console.log("10" === "10");// trueisNaN()函數(shù)與isfinite()函數(shù)的作用
//isNaN()函數(shù) 它的作用就是判斷當(dāng)前的值是否為NaN
//結(jié)果為true結(jié)果是NaN
//結(jié)果為false是結(jié)果不是NaN 因?yàn)樗皇且粋€(gè)數(shù)值
console.log(isNaN(1))// 因?yàn)樗皇荖aN所以結(jié)果為false
console.log(isNaN("大話(huà)西游"))//因?yàn)樗D(zhuǎn)換為number類(lèi)型為NaN所以結(jié)果為true
//isfinit()函數(shù)表示判斷當(dāng)前值是否為無(wú)窮大
//結(jié)果為false時(shí)表示當(dāng)前的值時(shí)無(wú)限大.
//當(dāng)結(jié)果為true時(shí) 表示當(dāng)前數(shù)值為有限大
var a = 100/0;
console.log(a)//infinety 表示輸出的結(jié)果為無(wú)限大
console.log(isFinite(a))//false
邏輯與運(yùn)算符
console.log(true && true);// true console.log(true && false);// false console.log(false && true);// false console.log(false && false);// false /* 將邏輯與運(yùn)算符的兩個(gè)操作數(shù),轉(zhuǎn)換為布爾類(lèi)型 * 當(dāng)左邊的操作數(shù)為true時(shí),結(jié)果為右邊操作數(shù)的值 * 當(dāng)左邊的操作數(shù)為false時(shí),結(jié)果為左邊操作數(shù)的值 */ `console.log(100 && 1);// 1 console.log(1 && 0);// 0 console.log(0 && 1);// 0 console.log(0 && 0);// 0 console.log(true && true); console.log(true && false); console.log(false && true); console.log(false && false); console.log("臥龍學(xué)苑" && "臥龍學(xué)苑");// 臥龍學(xué)苑 console.log("優(yōu)秀" && "");// "" console.log("" && "癡迷");// "" console.log("" && "");// "" console.log("答案" && 1);// 1 console.log(false && 0);// false
邏輯或運(yùn)算符:
console.log(true || true);// true console.log(true || false);// true console.log(false || true);// true console.log(false || false);// false ` /* 將邏輯與運(yùn)算符的兩個(gè)操作數(shù),轉(zhuǎn)換為布爾類(lèi)型 * 當(dāng)左邊的操作數(shù)為true時(shí),結(jié)果為左邊操作數(shù)的值 * 當(dāng)左邊的操作數(shù)為false時(shí),結(jié)果為右邊操作數(shù)的值 */ console.log(100 || 1);// 100 console.log(1 || 0);// 1 console.log(0 || 1);// 1 console.log(0 || 0);// 0 console.log(true || true); console.log(true || false); console.log(false || true); console.log(false || false); console.log("臥龍學(xué)苑" || "臥龍學(xué)苑");// 臥龍學(xué)苑 console.log("臥龍學(xué)苑" || "");// 臥龍學(xué)苑 console.log("" || "臥龍學(xué)苑");// 臥龍學(xué)苑 console.log("" || "");// "" 賦值的擴(kuò)展運(yùn)算符 var b = 10, c = 20; var a = b + c; console.log(a);// 30 // b = b + c; // 等價(jià)寫(xiě)法 - 賦值擴(kuò)展運(yùn)算符的性能要比賦值運(yùn)算符更高 b += c; console.log(b);// 30 條件運(yùn)算符: var result = 8 > 9 ? "對(duì)" : "錯(cuò)"; 1. console.log(result); var score = 95; score > 90 ? console.log("優(yōu)秀") : console.log("及格"); /*當(dāng)條件運(yùn)算符條件為true時(shí)輸出的結(jié)果為冒號(hào)前面的值 條件為false時(shí)輸出結(jié)果就是冒號(hào)后面的值*/嵌套運(yùn)算符:
** var score = 55; /*嵌套條件運(yùn)算符 * 優(yōu)點(diǎn) - 擴(kuò)展了條件運(yùn)算符本身的計(jì)算能力 * 缺點(diǎn) * 可讀性比較差 * 性能隨著嵌套的層級(jí)越多越差 * 建議 - 最多不要超過(guò)三層嵌套*/ var result = score > 90 ? "優(yōu)秀" : (score > 80 ? "良好" : (score > 60 ? "及格" : "不及格")); console.log(result);**
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/96690.html
摘要:所以就想把一大串縮短點(diǎn),將二進(jìn)制中的三位用一位表示。以可以大寫(xiě)也可以小寫(xiě)開(kāi)頭版本可以表示二進(jìn)制了八進(jìn)制的數(shù)據(jù)表現(xiàn)形式由組成。結(jié)果把系數(shù)基數(shù)的權(quán)次冪相加即可。因?yàn)檎Z(yǔ)言采用的是碼來(lái)編碼的。 1_(常量的概述和使用)* A:什么是常量(constant) 在程序執(zhí)行的過(guò)程中其值不可以發(fā)生改變 B:Java中常量的分類(lèi) 字面值常量 自定義常量(面向?qū)ο蟛糠种v) C:字面值常量的...
摘要:外部存儲(chǔ)器可用于長(zhǎng)期保存大量程序和數(shù)據(jù),其成本低容量大,但速度較慢。 1_計(jì)算機(jī)概述(了解) A:什么是計(jì)算機(jī)?計(jì)算機(jī)在生活中的應(yīng)用舉例 計(jì)算機(jī)(Computer)全稱(chēng):電子計(jì)算機(jī),俗稱(chēng)電腦。是一種能夠按照程序運(yùn)行,自動(dòng)、高速處理海量數(shù)據(jù)的現(xiàn)代化智能電子設(shè)備。由硬件和軟件所組成,沒(méi)有安裝任何軟件的計(jì)算機(jī)稱(chēng)為裸機(jī)。常見(jiàn)的形式有臺(tái)式計(jì)算機(jī)、筆記本計(jì)算機(jī)、大型計(jì)算機(jī)等。 應(yīng)用舉例 ...
摘要:第十七天筆記類(lèi)型轉(zhuǎn)換隱式類(lèi)型轉(zhuǎn)換隱式類(lèi)型轉(zhuǎn)換是弱類(lèi)型松散類(lèi)型的在任何情況下都可以強(qiáng)制轉(zhuǎn)換定義類(lèi)型類(lèi)型以及類(lèi)型的變量臥龍前端轉(zhuǎn)換為類(lèi)型轉(zhuǎn)換為類(lèi)型類(lèi)型轉(zhuǎn)換為類(lèi)型如果文本內(nèi)容是普通的文本非數(shù)字轉(zhuǎn)換后的結(jié)果為如果文本內(nèi)容是數(shù)字值轉(zhuǎn)換后的結(jié)果為對(duì) 第十七天筆記 類(lèi)型轉(zhuǎn)換 隱式類(lèi)型轉(zhuǎn)換 隱式類(lèi)型轉(zhuǎn)換 JavaScript是弱類(lèi)型/松散類(lèi)型的 在任何情況下都可以強(qiáng)制轉(zhuǎn)換 //定義number類(lèi)型 s...
閱讀 1337·2021-11-11 11:00
閱讀 3069·2021-09-24 09:47
閱讀 5004·2021-09-22 15:53
閱讀 976·2021-09-10 10:50
閱讀 3219·2021-09-01 11:40
閱讀 1178·2019-08-30 15:55
閱讀 480·2019-08-30 12:49
閱讀 1063·2019-08-29 17:12