相等運(yùn)算符等

<!DOCTYPE html>
<html lang="en">
<head>
?<meta charset="UTF-8">
?<title>相等運(yùn)算符</title>
?<script type="text/javascript">
??/*
??相等運(yùn)算符用來比較兩個(gè)值是否相等筐钟,
???如果相等會(huì)返回true,否則返回false
??
??使用 == 來做相等運(yùn)算
???- 當(dāng)使用==來比較兩個(gè)值時(shí)境蔼,如果值的類型不同,則會(huì)自動(dòng)進(jìn)行類型轉(zhuǎn)換咬清,將其轉(zhuǎn)換為相同的類型捐凭,然后再比較
??不相等
???不相等用來判斷兩個(gè)值是否不相等,如果不相等返回true鸽捻,否則返回false
????- 使用 != 來做不相等運(yùn)算
????- 不相等也會(huì)對(duì)變量進(jìn)行自動(dòng)的類型轉(zhuǎn)換呼巴,如果轉(zhuǎn)換后相等它也會(huì)返回false
??
??===
???全等
???- 用來判斷兩個(gè)值是否全等,它和相等類似御蒲,不同的是它不會(huì)做自動(dòng)的類型轉(zhuǎn)換
????如果兩個(gè)值的類型不同衣赶,直接返回false
??!==
???不全等
???- 用來判斷兩個(gè)值是否不全等,和不等類似厚满,不同的是它不會(huì)做自動(dòng)的類型轉(zhuǎn)換
????如果兩個(gè)值的類型不同府瞄,直接返回true
??*/
??
??console.log(1 == 1);
??var a = 10;
??// console.log(a == 4);//false
??console.log('1' == 4);//true
??console.log(true == '1');//true
??console.log(null == 0);//false
??console.log(null == undefined);//true
??console.log(NaN == '1');//false
??console.log(NaN == undefined);//false
??console.log(NaN == NaN);//false

??var b =NaN;

??// console.log(b == NaN);//false
??// console.log(isNaN(b));//true

??// console.log(10 != 5);//true
??// console.log(10 != 10);//false
??// console.log('abcd' != 'abcd');//false
??// console.log('1' != 1);//false

??// console.log('123' == 123);//true
??// console.log('123' === 123);//false
??// console.log(null == undefined);//true
??// console.log(null === undefined);//false
??console.log(1 != '1');//false
??console.log(1 !== '1');//true
?</script>
</head>
<body>

</body>
</html>






<!DOCTYPE html>
<html lang="en">
<head>
?<meta charset="UTF-8">
?<title>Boolean</title>
?<script type="text/javascript">
??/*
??Boolean 布爾值
???布爾值只有兩個(gè),主要用來做邏輯判斷
???true
????- 表示真
???false
????- 表示假
???
???使用typeof檢查一個(gè)布爾值時(shí)碘箍,會(huì)返回boolean
??*/
??var bool = false;
??console.log(bool);
??console.log(typeof bool);//boolean
?</script>
</head>
<body>

</body>
</html>



<!DOCTYPE html>
<html lang="en">
<head>
?<meta charset="UTF-8">
?<title>Null和Undefined</title>
?<script type="text/javascript">
??/*
??Null(空值)類型的值只有一個(gè)遵馆,就是null
???null這個(gè)值專門用來表示一個(gè)為空的對(duì)象
???使用typeof檢查一個(gè)null值時(shí),會(huì)返回object

??Undefined(未定義)類型的值只有一個(gè)丰榴,就undefind
???當(dāng)聲明一個(gè)變量货邓,但是并不給變量賦值時(shí),它的值就是undefined
???使用typeof檢查一個(gè)undefined時(shí)也會(huì)返回undefined
??*/
??var a =null;
??console.log(a);
??console.log(typeof a);//object

??var b;//undefined
??console.log(b);
??console.log(typeof b)
?</script>
</head>
<body>

</body>
</html>



<!DOCTYPE html>
<html lang="en">
<head>
?<meta charset="UTF-8">
?<title>運(yùn)算符的優(yōu)先級(jí)</title>
?<script type="text/javascript">
??/*
??, 運(yùn)算符
???使用,可以分割多個(gè)語句多艇,一般可以在聲明多個(gè)變量時(shí)使用
?? */
?? // var a,b,c;
?? var a=1, b=2, c=3;

?? // alert(b);//2

?? var result = 1+2*3;
?? result = 1 || 2 && 3;
?? console.log('result =' + result);
?</script>
</head>
<body>

</body>
</html>



<!DOCTYPE html>
<html lang="en">
<head>
?<meta charset="UTF-8">
?<title>條件運(yùn)算符</title>
?<script type="text/javascript">
??/*
??條件運(yùn)算符也叫三元運(yùn)算符
???語法:
????條件表達(dá)式?語句1:語句2;
???- 執(zhí)行的流程:
????條件運(yùn)算符在執(zhí)行時(shí)逻恐,首先對(duì)條件表達(dá)式進(jìn)行求值,
?????如果該值為true,則執(zhí)行語句1复隆,并返回執(zhí)行結(jié)果
?????如果該值為false拨匆,則執(zhí)行語句2,并返回執(zhí)行結(jié)果
????如果條件的表達(dá)式的求值結(jié)果是一個(gè)非布爾值挽拂,會(huì)將其轉(zhuǎn)換為布爾值然后在運(yùn)算
??*/
??
??// true ? alert("語句1") : alert("語句2");
??// false ? alert("語句1") : alert("語句2");

??var a = 30;
??var b = 43;
??var c = 50;

??// a>b ? alert('a大') ; alert('b大')惭每;

??// var max = a>b ? a : b;
??// max = max>c ? max : c;

??var max = a > b ? (a > c ? a : c) : (b > c ? b : c);
??// console.log('max =' + max);

??'hello' ? alert('語句1') : alert('語句2');
?</script>
</head>
<body>

</body>
</html>


<!DOCTYPE html>
<html lang="en">
<head>
?<meta charset="UTF-8">
?<title>關(guān)系運(yùn)算符</title>
?<script type="text/javascript">
??/*
??通過關(guān)系運(yùn)算符可以比較兩個(gè)值之間的大小關(guān)系,
???如果關(guān)系成立它會(huì)返回true亏栈,如果關(guān)系不成立則返回false
??
??> 大于號(hào)
???- 判斷符號(hào)左側(cè)的值是否大于右側(cè)的值
???- 如果關(guān)系成立台腥,返回true,如果關(guān)系不成立則返回false
??
??>= 大于等于
???- 判斷符號(hào)左側(cè)的值是否大于或等于右側(cè)的值
??
??< 小于號(hào)
??<= 小于等于
??
??非數(shù)值的情況
???- 對(duì)于非數(shù)值進(jìn)行比較時(shí)绒北,會(huì)將其轉(zhuǎn)換為數(shù)字然后再比較
???- 如果符號(hào)兩側(cè)的值都是字符串時(shí)黎侈,不會(huì)將其轉(zhuǎn)換為數(shù)字進(jìn)行比較,而會(huì)分別比較字符串中字符的Unicode編碼
??*/
??
??var result = 5 > 10;//flase
??var rasult = 5 > 4;//true
??var result = 5 > 5;//false
??var result = 5 >= 5;//true
??var result = 5 >= 4;//true
??var result = 5 < 4;//false
??var result = 4 <= 4;//true
??
??// console.log("result = "+result);
??// console.log(1 > true);//false
??// console.log(1 >= true);//true
??// console.log(1 >= '0');//true
??// console.log(10 > 'null');//true 10>0

??//Nan和任何值比較結(jié)果都是false
??// console.log(10 > 'hello');//false
??// console.log(10 >= 'hello');//false
??// console.log(10 < 'hello');//false
??// console.log(10 <= 'hello');//false

??console.log(true > false);//true 1>0
??console.log('1' < '5');//true
??console.log(11 < '5');//false
??console.log('a' < 'b');//true
??console.log('abc' < 'b')//true
??console.log('bbc' < 'b')//false
??console.log('bbc' < 'bcd')//true
??console.log('我' < '你')//false
??console.log('1112332131' < +'5');//false
?</script>
</head>
<body>

</body>
</html>



<!DOCTYPE html>
<html lang="en">
<head>
?<meta charset="UTF-8">
?<title>賦值運(yùn)算符</title>
?<script type="text/javascript">
??/*
??=
???可以將符號(hào)右側(cè)的值賦值給符號(hào)左側(cè)的變量
??+=
???a += 5 等價(jià)于 a = a + 5
??-=
???a -= 5 等價(jià)于 a = a - 5
??*=
???a *= 5 等價(jià)于 a = a * 5
??/=
???a /= 5 等價(jià)于 a = a / 5
??%=
???a %= 5 等價(jià)于 a = a % 5
???
?? */
??var a = 10;
??//a = a + 5;
??// a -= 5;
??// a += 5;
??// a *= 5;
??// a /= 5;
??a %= 3;//1
??console.log("a = "+a);
?</script>
</head>
<body>

</body>
</html>



<!DOCTYPE html>
<html lang="en">
<head>
?<meta charset="UTF-8">
?<title>與或運(yùn)算</title>
?<script type="text/javascript">
??/*
??&& || 非布爾值的情況
???- 對(duì)于非布爾值進(jìn)行與或運(yùn)算時(shí)闷游,會(huì)先將其轉(zhuǎn)換為布爾值峻汉,然后再運(yùn)算,并且返回原值
???- 與運(yùn)算:
????- 如果第一個(gè)值為true脐往,則必然返回第二個(gè)值
????- 如果第一個(gè)值為false休吠,則直接返回第一個(gè)值
??
???- 或運(yùn)算
????- 如果第一個(gè)值為true,則直接返回第一個(gè)值
????- 如果第一個(gè)值為false业簿,則返回第二個(gè)值
??*/
??
??var result = 1 && 2;//true && true 2
??result = 2 && 1;//true&&true 1

??result = 0 && 2;//false && true 0
??result = 2 && 0;//true && false 0
??result = NaN && 0;//false && false NaN
??result = 0 && NaN;//false && false 0

??result = 2 || 1;//true && true 2
??result = 2 || NaN;//true && false 2
??result = NaN || 0;//false && false 0
??result = ''||'hello';//false||true 'hello'
??result = -1 || '您好';//true||true -1
??
??console.log("result = "+result);
?</script>
</head>
<body>

</body>
</html>



<!DOCTYPE html>
<html lang="en">
<head>
?<meta charset="UTF-8">
?<title>邏輯運(yùn)算符</title>
?<script type="text/javascript">
??/*
??JS中為我們提供了三種邏輯運(yùn)算符
??! 非
???- !可以用來對(duì)一個(gè)值進(jìn)行非運(yùn)算
???- 所謂非運(yùn)算就是值對(duì)一個(gè)布爾值進(jìn)行取反操作瘤礁,
????true變false,false變true
???- 如果對(duì)一個(gè)值進(jìn)行兩次取反梅尤,它不會(huì)變化
???- 如果對(duì)非布爾值進(jìn)行元素柜思,則會(huì)將其轉(zhuǎn)換為布爾值,然后再取反
????所以我們可以利用該特點(diǎn)克饶,來將一個(gè)其他的數(shù)據(jù)類型轉(zhuǎn)換為布爾值
????可以為一個(gè)任意數(shù)據(jù)類型取兩次反酝蜒,來將其轉(zhuǎn)換為布爾值,原理和Boolean()函數(shù)一樣
??
??&& 與
???- &&可以對(duì)符號(hào)兩側(cè)的值進(jìn)行與運(yùn)算并返回結(jié)果
???- 運(yùn)算規(guī)則
????- 兩個(gè)值中只要有一個(gè)值為false就返回false矾湃,
?????只有兩個(gè)值都為true時(shí)亡脑,才會(huì)返回true
????- JS中的“與”屬于短路的與,
?????如果第一個(gè)值為false邀跃,則不會(huì)看第二個(gè)值
??
??|| 或
???- ||可以對(duì)符號(hào)兩側(cè)的值進(jìn)行或運(yùn)算并返回結(jié)果
???- 運(yùn)算規(guī)則:
????- 兩個(gè)值中只要有一個(gè)true霉咨,就返回true
?????如果兩個(gè)值都為false,才返回false
????- JS中的“或”屬于短路的或
?????如果第一個(gè)值為true拍屑,則不會(huì)檢查第二個(gè)值
?? */
??
??var a = false;
??a = !!a;
??
??// console.log("a = " + a);

??var b = 10;//true
??b = !!b;//false
??// console.log('b = ' + b);
??// console.log(typeof b)

??var result = true && true;//true
??result = true && false;//false
??result = false && true;//false
??result = false && false;//false?
??// console.log('result = ' + result);

??// true && alert('看我出不出來');
??// false && alert('看我出不出來');

??result = false || false;//false
??result = true || false;//true
??result = false || true;//true
??result = true || true;//true
??// console.log('result = ' + result);

??//false ||alert('123');
??true || alert('123');
?</script>
</head>
<body>

</body>
</html>



<!DOCTYPE html>
<html lang="en">
<head>
?<meta charset="UTF-8">
?<title>自增和自減的練習(xí)</title>
?<script type="text/javascript">
??var n1=10;
??var n2=20;
??
??var n = n1++; //
??
??console.log('n=' + n);? //
??console.log('n1=' + n1); //
??
??n = ++n1; //
??console.log('n=' + n); //
??console.log('n1=' + n1); //
??
??n = n2--;//
??console.log('n=' + n); //
??console.log('n2=' + n2); //
??
??n = --n2; //
??console.log('n=' + n); //
??console.log('n2=' + n2); //
?</script>
</head>
<body>

</body>
</html>



<!DOCTYPE html>
<html lang="en">
<head>
?<meta charset="UTF-8">
?<title>自增和自減</title>
?<script type="text/javascript">
??/*
??自增 ++
???- 通過自增可以使變量在自身的基礎(chǔ)上增加1
???- 對(duì)于一個(gè)變量自增以后途戒,原變量的值會(huì)立即自增1
???- 自增分成兩種:后++(a++) 和 前++(++a)?
????無論是a++還是++a,都會(huì)立即使原變量的值自增1
????不同的是a++和++a的值不同
????a++的值等于原變量的值(自增前的值)
????++a的值等于新值 (自增后的值)
??
??自減 --
???- 通過自減可以使變量在自身的基礎(chǔ)上減1
???- 自減分成兩種:后--(a--) 和 前--(--a)
????無論是a--還是--a都會(huì)立即使原變量的值自減1
????不同的是a-- 和 --a的值不同
?????a-- 是變量的原值 (自減前的值)
?????--a 是變量的新值 (自減以后的值)
??*/
??var a = 1;
??// a = a + 1;
??// a++;
??// ++a;

??// console.log(a++);//1 先賦值
??// console.log(++a)l//2 先自增
??// console.log("a = " + a);

??var c = 10;
??c++;
??console.log(c++);
?</script>
</head>
<body>

</body>
</html>



<!DOCTYPE html>
<html lang="en">
<head>
?<meta charset="UTF-8">
?<title>一元運(yùn)算符</title>
?<script type="text/javascript">
??/*
??一元運(yùn)算符僵驰,只需要一個(gè)操作數(shù)
???+ 正號(hào)
????- 正號(hào)不會(huì)對(duì)數(shù)字產(chǎn)生任何影響
???- 負(fù)號(hào)
????- 負(fù)號(hào)可以對(duì)數(shù)字進(jìn)行符號(hào)的取反
??
???- 對(duì)于非Number類型的值喷斋,它會(huì)將先轉(zhuǎn)換為Number唁毒,然后再運(yùn)算
???- 可以對(duì)一個(gè)其他的數(shù)據(jù)類型使用+,來將其轉(zhuǎn)換為number,它的原理和Number()函數(shù)一樣
??*/
???
??var a = 123;
??a = +a;
??a = -a;

??a = true;//1
??a = -a;

??a = '18';
??a = +a;
??
??// console.log(typeof a);
??// console.log("a = " + a);

??// var result = 1 + '2' + 3;//'123'
??var result = 1 + +'2' + 3;//6
??console.log('result = ' + result);
?</script>
</head>
<body>

</body>
</html>

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末星爪,一起剝皮案震驚了整個(gè)濱河市浆西,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌顽腾,老刑警劉巖近零,帶你破解...
    沈念sama閱讀 218,204評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異抄肖,居然都是意外死亡久信,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,091評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門漓摩,熙熙樓的掌柜王于貴愁眉苦臉地迎上來裙士,“玉大人,你說我怎么就攤上這事幌甘〕笔郏” “怎么了?”我有些...
    開封第一講書人閱讀 164,548評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵锅风,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我鞍泉,道長(zhǎng)皱埠,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,657評(píng)論 1 293
  • 正文 為了忘掉前任咖驮,我火速辦了婚禮边器,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘托修。我一直安慰自己忘巧,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,689評(píng)論 6 392
  • 文/花漫 我一把揭開白布睦刃。 她就那樣靜靜地躺著砚嘴,像睡著了一般。 火紅的嫁衣襯著肌膚如雪涩拙。 梳的紋絲不亂的頭發(fā)上际长,一...
    開封第一講書人閱讀 51,554評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音兴泥,去河邊找鬼工育。 笑死,一個(gè)胖子當(dāng)著我的面吹牛搓彻,可吹牛的內(nèi)容都是我干的如绸。 我是一名探鬼主播嘱朽,決...
    沈念sama閱讀 40,302評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼怔接!你這毒婦竟也來了搪泳?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,216評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤蜕提,失蹤者是張志新(化名)和其女友劉穎森书,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體谎势,經(jīng)...
    沈念sama閱讀 45,661評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡凛膏,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,851評(píng)論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了脏榆。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片猖毫。...
    茶點(diǎn)故事閱讀 39,977評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖须喂,靈堂內(nèi)的尸體忽然破棺而出吁断,到底是詐尸還是另有隱情,我是刑警寧澤坞生,帶...
    沈念sama閱讀 35,697評(píng)論 5 347
  • 正文 年R本政府宣布仔役,位于F島的核電站,受9級(jí)特大地震影響是己,放射性物質(zhì)發(fā)生泄漏又兵。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,306評(píng)論 3 330
  • 文/蒙蒙 一卒废、第九天 我趴在偏房一處隱蔽的房頂上張望沛厨。 院中可真熱鬧,春花似錦摔认、人聲如沸逆皮。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,898評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽电谣。三九已至,卻和暖如春蓖柔,著一層夾襖步出監(jiān)牢的瞬間辰企,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,019評(píng)論 1 270
  • 我被黑心中介騙來泰國(guó)打工况鸣, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留牢贸,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,138評(píng)論 3 370
  • 正文 我出身青樓镐捧,卻偏偏與公主長(zhǎng)得像潜索,于是被迫代替她去往敵國(guó)和親臭增。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,927評(píng)論 2 355

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