前端筆記9

自增和自減

代碼:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>自增和自減</title>
<script type="text/javascript">
    /*
    自增 ++
        - 通過自增可以使變量在自身的基礎(chǔ)上增加1
        - 對于一個變量自增以后酪捡,原變量的值會立即自增1
        - 自增分成兩種:后++(a++) 和 前++(++a)    
            無論是a++還是++a,都會立即使原變量的值自增1
            不同的是a++和++a的值不同
            a++的值等于原變量的值(自增前的值)
            ++a的值等于新值 (自增后的值)
    
    自減 --
        - 通過自減可以使變量在自身的基礎(chǔ)上減1
        - 自減分成兩種:后--(a--) 和 前--(--a)
            無論是a--還是--a都會立即使原變量的值自減1
            不同的是a-- 和 --a的值不同
                a-- 是變量的原值 (自減前的值)
                --a 是變量的新值 (自減以后的值)
    */
    var a = 1;
    
    //使a自增1
    //a++;
    //++a;
    
    //console.log("++a = " + ++a);
    //console.log("a++ = " + a++);
    
    //console.log("a = " + a);
    
    
    var c = 10;
    
    //第一次c++,是在10的基礎(chǔ)上自增
    c++;
    
    //第二次c++,是在11的基礎(chǔ)上自增
    //console.log(c++);
    
    var d = 20;
    
    //console.log(++d);//21
    //console.log(++d);//22
    
    //20 + 22 + 22
    var result = d++ + ++d + d ;
    // console.log("result = " + result);
    
    d = 20
    d = d++;
    /*
    相當(dāng)于
    var e = d++;
    d = e;
     */
    
    // console.log("d = "+d);
    
    var num = 10;
    
    //num--;
    //--num;
    
    // console.log(num--);
    console.log(--num);
    
    console.log("num = "+num);
</script>
</head>
<body>

</body>
</html>

自增和自減的練習(xí)

代碼:
<!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++; //先賦值n=10  后自增n1=11
    
    console.log('n=' + n);  //10
    console.log('n1=' + n1); //11
    
    n = ++n1; //先自增n1=12  后賦值n=12
    console.log('n=' + n); //12
    console.log('n1=' + n1); //12
    
    n = n2--;//先賦值n=20 后自減n2=19 
    console.log('n=' + n); //20
    console.log('n2=' + n2); //19
    
    n = --n2; //先自減n2=18 后賦值n=18
    console.log('n=' + n); //18
    console.log('n2=' + n2); //18
</script>
</head>
<body>

</body>
</html>

運算符

代碼:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>邏輯運算符</title>
<script type="text/javascript">
    /*
    JS中為我們提供了三種邏輯運算符
    ! 非
        - !可以用來對一個值進行非運算
        - 所謂非運算就是值對一個布爾值進行取反操作,
            true變false,false變true
        - 如果對一個值進行兩次取反,它不會變化
        - 如果對非布爾值進行元素首有,則會將其轉(zhuǎn)換為布爾值,然后再取反
            所以我們可以利用該特點枢劝,來將一個其他的數(shù)據(jù)類型轉(zhuǎn)換為布爾值
            可以為一個任意數(shù)據(jù)類型取兩次反井联,來將其轉(zhuǎn)換為布爾值,原理和Boolean()函數(shù)一樣
    
    && 與
        - &&可以對符號兩側(cè)的值進行與運算并返回結(jié)果
        - 運算規(guī)則
            - 兩個值中只要有一個值為false就返回false您旁,
                只有兩個值都為true時烙常,才會返回true
            - JS中的“與”屬于短路的與,
                如果第一個值為false鹤盒,則不會看第二個值
    
    || 或
        - ||可以對符號兩側(cè)的值進行或運算并返回結(jié)果
        - 運算規(guī)則:
            - 兩個值中只要有一個true蚕脏,就返回true
                如果兩個值都為false,才返回false
            - JS中的“或”屬于短路的或
                如果第一個值為true侦锯,則不會檢查第二個值
     */
    
    var a = true;
    //對a進行非運算
    a = !a;
    //console.log("a = " + a);
    
    var b = 10;
    b = !!b;
    
    //console.log("b = " + b);
    //console.log(typeof b);
    
    //如果兩個值都是true則返回true
    var result = true && true;
    
    //只要有一個false驼鞭,就返回false
    result = true && false;
    result = false && true;
    result = false && false;
    
    //console.log("result = "+result);
    
    //第一個值為true,會檢查第二個值
    //true && alert("看我出不出來3吲觥挣棕!");
    
    //第一個值為false汇竭,不會檢查第二個值
    //false && alert("看我出不出來!穴张!");
    
    //兩個都是false,則返回false
    result = false || false;
    
    //只有有一個true两曼,就返回true
    result = true || false;
    result = false || true ;
    result = true || true ;
    
    //console.log("result = "+result);
    
    //第一個值為false皂甘,則會檢查第二個值
    //false || alert("123");
    
    //第一個值為true,則不再檢查第二個值
    true || alert("123");
</script>
</head>
<body>

</body>
</html>

與或運算

代碼:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>與或運算</title>
<script type="text/javascript">
    /*
    && || 非布爾值的情況
        - 對于非布爾值進行與或運算時悼凑,會先將其轉(zhuǎn)換為布爾值偿枕,然后再運算,并且返回原值
        - 與運算:
            - 如果第一個值為true户辫,則必然返回第二個值
            - 如果第一個值為false渐夸,則直接返回第一個值
    
        - 或運算
            - 如果第一個值為true,則直接返回第一個值
            - 如果第一個值為false渔欢,則返回第二個值
    */
    
    //true && true
    //與運算:如果兩個值都為true墓塌,則返回后邊的
    var result = 2 && 1;
    
    //與運算:如果兩個值中有false,則返回靠前的false
    //false && true
    result = 0 && 2;
    result = 2 && 0;
    //false && false
    result = NaN && 0;
    result = 0 && NaN;
    
    //true || true
    //如果第一個值為true奥额,則直接返回第一個值
    result = 2 || 1;
    result = 2 || NaN;
    result = 2 || 0;
    
    //如果第一個值為false苫幢,則直接返回第二個值
    result = NaN || 1;
    result = NaN || 0;
    
    result = "" || "hello";
    
    result = -1 || "你好";
    
    console.log("result = "+result);
</script>
</head>
<body>

</body>
</html>

賦值運算符

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

</body>
</html>

關(guān)系運算符

代碼:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>關(guān)系運算符</title>
<script type="text/javascript">
    /*
    通過關(guān)系運算符可以比較兩個值之間的大小關(guān)系,
        如果關(guān)系成立它會返回true垫挨,如果關(guān)系不成立則返回false
    
    > 大于號
        - 判斷符號左側(cè)的值是否大于右側(cè)的值
        - 如果關(guān)系成立韩肝,返回true,如果關(guān)系不成立則返回false
    
    >= 大于等于
        - 判斷符號左側(cè)的值是否大于或等于右側(cè)的值
    
    < 小于號
    <= 小于等于
    
    非數(shù)值的情況
        - 對于非數(shù)值進行比較時九榔,會將其轉(zhuǎn)換為數(shù)字然后再比較
        - 如果符號兩側(cè)的值都是字符串時哀峻,不會將其轉(zhuǎn)換為數(shù)字進行比較,而會分別比較字符串中字符的Unicode編碼
    */
    
    var result = 5 > 10;//false
    
    result = 5 > 4; //true
    
    result = 5 > 5; //false
    
    result = 5 >= 5; //true
    
    result = 5 >= 4; //true
    
    result = 5 < 4; //false
    
    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
    //任何值和NaN做任何比較都是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
    //console.log("1" < "5"); //true
    //console.log("11" < "5"); //true
    
    //比較兩個字符串時哲泊,比較的是字符串的字符編碼
    //console.log("a" < "b");//true
    //比較字符編碼時是一位一位進行比較
    //如果兩位一樣剩蟀,則比較下一位,所以借用它來對英文進行排序
    // console.log("abc" < "b");//true
    // console.log("bbc" < "b");//false
    //console.log("abc" < "bcd");//true
    //比較中文時沒有意義
    //console.log("你" > "我"); //false
    // console.log("月" > "我"); //true
    
    //如果比較的兩個字符串型的數(shù)字攻旦,可能會得到不可預(yù)期的結(jié)果
    //注意:在比較兩個字符串型的數(shù)字時喻旷,一定一定一定要轉(zhuǎn)型
    console.log("11123123123123123123" < +"5"); //false
</script>
</head>
<body>

</body>
</html>

unicode編碼

代碼:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Unicode編碼</title>
<script type="text/javascript">
    /*
    在字符串中使用轉(zhuǎn)義字符輸入Unicode編碼
        \u四位編碼
    */
    console.log("\u2F81");
    console.log("\u2620");
</script>
</head>
<body>
<!--
在網(wǎng)頁中使用Unicode編碼:
    &#編碼; 
注意:這里的編碼需要的是10進制
-->
<h1 style="font-size: 200px;">&#9760;</h1>
<h1 style="font-size: 200px;">&#9856;</h1>

</body>
</html>

相等運算符

代碼:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>相等運算符</title>
<script type="text/javascript">
    /*
    相等運算符用來比較兩個值是否相等,
        如果相等會返回true牢屋,否則返回false
    
    使用 == 來做相等運算
        - 當(dāng)使用==來比較兩個值時且预,如果值的類型不同,則會自動進行類型轉(zhuǎn)換烙无,將其轉(zhuǎn)換為相同的類型锋谐,然后再比較
    不相等
        不相等用來判斷兩個值是否不相等,如果不相等返回true截酷,否則返回false
            - 使用 != 來做不相等運算
            - 不相等也會對變量進行自動的類型轉(zhuǎn)換涮拗,如果轉(zhuǎn)換后相等它也會返回false
    
    ===
        全等
        - 用來判斷兩個值是否全等,它和相等類似,不同的是它不會做自動的類型轉(zhuǎn)換
            如果兩個值的類型不同三热,直接返回false
    !==
        不全等
        - 用來判斷兩個值是否不全等鼓择,和不等類似,不同的是它不會做自動的類型轉(zhuǎn)換
            如果兩個值的類型不同就漾,直接返回true
    */
    
    //console.log(1 == 1); //true
    
    var a = 10;
    
    //console.log(a == 4); //false
    
    //console.log("1" == 1); //true
    
    //console.log(true == "1"); //true
    
    //console.log(null == 0); //false
    
    /*
    undefined 衍生自 null
        所以這兩個值做相等判斷時呐能,會返回true
     */
    //console.log(undefined == null);//true
    
    /*
    NaN不和任何值相等,包括他本身
     */
    //console.log(NaN == "1"); //false
    //console.log(NaN == "undefined"); //false
    //console.log(NaN == NaN); //false
    
    var b = NaN;
    
    //判斷b的值是否是NaN
    //console.log(b == NaN);//無法判斷抑堡,只會返回false
    /*
    可以通過isNaN()函數(shù)來判斷一個值是否是NaN
        如果該值是NaN則返回true摆出,否則返回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);//false
    //console.log(null === undefined);//false
    
    console.log(1 != "1"); //true
</script>
</head>
<body>

</body>
</html>
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市首妖,隨后出現(xiàn)的幾起案子偎漫,更是在濱河造成了極大的恐慌,老刑警劉巖有缆,帶你破解...
    沈念sama閱讀 218,607評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件象踊,死亡現(xiàn)場離奇詭異,居然都是意外死亡妒貌,警方通過查閱死者的電腦和手機通危,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,239評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來灌曙,“玉大人菊碟,你說我怎么就攤上這事≡诖蹋” “怎么了逆害?”我有些...
    開封第一講書人閱讀 164,960評論 0 355
  • 文/不壞的土叔 我叫張陵,是天一觀的道長蚣驼。 經(jīng)常有香客問我魄幕,道長,這世上最難降的妖魔是什么颖杏? 我笑而不...
    開封第一講書人閱讀 58,750評論 1 294
  • 正文 為了忘掉前任纯陨,我火速辦了婚禮,結(jié)果婚禮上留储,老公的妹妹穿的比我還像新娘翼抠。我一直安慰自己,他們只是感情好获讳,可當(dāng)我...
    茶點故事閱讀 67,764評論 6 392
  • 文/花漫 我一把揭開白布阴颖。 她就那樣靜靜地躺著,像睡著了一般丐膝。 火紅的嫁衣襯著肌膚如雪量愧。 梳的紋絲不亂的頭發(fā)上钾菊,一...
    開封第一講書人閱讀 51,604評論 1 305
  • 那天,我揣著相機與錄音偎肃,去河邊找鬼煞烫。 笑死,一個胖子當(dāng)著我的面吹牛累颂,可吹牛的內(nèi)容都是我干的红竭。 我是一名探鬼主播,決...
    沈念sama閱讀 40,347評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼喘落,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了最冰?” 一聲冷哼從身側(cè)響起瘦棋,我...
    開封第一講書人閱讀 39,253評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎暖哨,沒想到半個月后赌朋,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,702評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡篇裁,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,893評論 3 336
  • 正文 我和宋清朗相戀三年沛慢,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片达布。...
    茶點故事閱讀 40,015評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡团甲,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出黍聂,到底是詐尸還是另有隱情跑揉,我是刑警寧澤甩挫,帶...
    沈念sama閱讀 35,734評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響侥猬,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜块促,卻給世界環(huán)境...
    茶點故事閱讀 41,352評論 3 330
  • 文/蒙蒙 一登澜、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧牛隅,春花似錦炕柔、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,934評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至丈攒,卻和暖如春哩罪,著一層夾襖步出監(jiān)牢的瞬間授霸,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,052評論 1 270
  • 我被黑心中介騙來泰國打工际插, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留碘耳,地道東北人。 一個月前我還...
    沈念sama閱讀 48,216評論 3 371
  • 正文 我出身青樓框弛,卻偏偏與公主長得像辛辨,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子瑟枫,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,969評論 2 355

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

  • 第2章 基本語法 2.1 概述 基本句法和變量 語句 JavaScript程序的執(zhí)行單位為行(line)斗搞,也就是一...
    悟名先生閱讀 4,149評論 0 13
  • 一、Java 簡介 Java是由Sun Microsystems公司于1995年5月推出的Java面向?qū)ο蟪绦蛟O(shè)計...
    子非魚_t_閱讀 4,190評論 1 44
  • 運算符是處理數(shù)據(jù)的基本方法慷妙,用來從現(xiàn)有的值得到新的值僻焚。JavaScript 提供了多種運算符,本章逐一介紹這些運算...
    許先生__閱讀 605評論 0 3
  • 運算符是處理數(shù)據(jù)的基本方法膝擂,用來從現(xiàn)有的值得到新的值虑啤。JavaScript 提供了多種運算符,本章逐一介紹這些運算...
    徵羽kid閱讀 680評論 0 0
  • 第一百二十五章 以為狂風(fēng)暴雨架馋,壞夜狞山; 卻是和風(fēng)細(xì)雨,良宵叉寂。 蘇曼君租住的那間屋子非常的簡單萍启,就只有一張舊床和一個又...
    何來雍雅閱讀 183評論 0 2