中文字幕在线一区二区在线,久久久精品免费观看国产,无码日日模日日碰夜夜爽,天堂av在线最新版在线,日韩美精品无码一本二本三本,麻豆精品三级国产国语,精品无码AⅤ片,国产区在线观看视频

      JavaScript 學習筆記:操作符

      時間:2024-08-13 00:53:07 JavaScript 我要投稿
      • 相關(guān)推薦

      JavaScript 學習筆記:操作符

        一、一元操作符

      JavaScript 學習筆記:操作符

        1、自增自減操作符:分為前置型和后置型;

        前置型:++a;--a;

        后置型:a++;a--;

        例:

        復制代碼 代碼如下:

        

        其中a=i++,相當于a=i;i=i+1;

        而b=++j,相當于j=j+1;b=j;

        2、一元加減操作符:a=+i;a=-i;

        復制代碼 代碼如下:

        

        對整數(shù)而言,一元減相當于取負數(shù)。

        二、位操作符

        1、按位非~ (NOT)

        非,即按二進制形式將所有數(shù)字取反。

        常見用法:位運算 NOT 實質(zhì)上是對數(shù)字求負,然后減 1

        2、按位或| (OR)

        或,即按二進制形式將所有的數(shù)字與目標數(shù)字按位進行或操作。

        常見用法:通常用于二進制數(shù)字的無條件賦值。例如:一個數(shù)字|1,相當于與獲取與當前數(shù)字最接近的奇數(shù)。

        3、按位與& (AND)

        與,即按二進制形式將所有的數(shù)字與目標數(shù)字按位進行與操作。

        常見用法:通常用于二進制的取位操作,例如:一個數(shù)字&1,如果結(jié)果為0則為偶數(shù),如果為1則為奇數(shù)。

        4、按位異或^ (XOR)

        異或,即按二進制形式將所有數(shù)字與目標數(shù)字對比,只有兩個數(shù)字不相同即只有一個數(shù)位存放的是1的時候返回1,如兩個數(shù)字相同返回0.

        常見用法:xor運算的逆運算是它本身,也就是說兩次異或同一個數(shù)最后結(jié)果不變。可以用于簡單的加密,或交互數(shù)值操作。

        5、左移<<

        左移,即按二進制形式把所有的數(shù)字向左移動對應(yīng)的位數(shù),高位移出(舍棄),低位的空位補零。左移不會影響符號位。

        數(shù)學意義:在數(shù)字沒有溢出的前提下,對于正數(shù)和負數(shù),左移一位都相當于乘以2的1次方,左移n位就相當于乘以2的n次方。

        6、右移

        6.1有符號的右移>>:即按二進制形式把所有的數(shù)值向右移動但是保留符號位。

        數(shù)學意義:在數(shù)字沒有溢出的前提下,對于正數(shù)和負數(shù),右移一位都相當于除以2的1次方,右移n位就相當于除以2的n次方。

        6.2無符號的右移>>>:即按二進制形式把所有的數(shù)值,包括符號位都向右移動。

        對于正數(shù)來說>>和>>>的結(jié)果是一樣的;

        對負數(shù)來說,由于負數(shù)以其絕對值的補碼形式表示,因此會導致無符號右移結(jié)果非常大。

        三、布爾操作符

        1、邏輯非 !

        邏輯非用!表示,可以應(yīng)用與ECMAScript的任何類型的值,邏輯非操作返回的是一個布爾值(true/false)。該操作符首先會將它的操作數(shù)轉(zhuǎn)換為一個布爾值,然后再對其求反.

        !!相當于Boolean()函數(shù)。

        Boolean()轉(zhuǎn)型函數(shù)的一組規(guī)則。

        數(shù)據(jù)類型轉(zhuǎn)換為true的值轉(zhuǎn)換為false的值

        Booleantruefalse

        String任何非空字符串""(空字符串)

        Number任何非零數(shù)字值(包括無窮大)0和NaN

        Object任何對象null

        Undefined 無undefined

        2、邏輯與&&

        邏輯與有兩個操作數(shù)。

        邏輯與操作可以應(yīng)用于任何類型的操作數(shù),而不僅僅是布爾值。在有一個操作數(shù)不是布爾值的情況下,邏輯與操作就不一定返回布爾值;此時,它遵循一下規(guī)則:

        1. 如果第一個操作數(shù)是對象,則返回第二個操作數(shù);

        2. 如果第二個操作數(shù)是對象,則只有在第一個操作數(shù)的求值結(jié)果為true的情況下才會返回該對象;

        3. 如果兩個操作符都是對象,則返回第二個操作數(shù); 遵循第一規(guī)則。

        4. 如果有一個操作數(shù)是null,則返回null;

        5. 如果有一個操作數(shù)是NaN,則返回NaN;

        6. 如果有一個操作數(shù)是undefined,則返回undefined。

        邏輯與操作屬于短路操作,即如果第一操作數(shù)能夠決定結(jié)果,那么就不會再對第二個操作數(shù)求值。(可以理解為內(nèi)部的兩個return操作)。因此當4、5、6規(guī)則沖突時,遵循短路操作原則。

        復制代碼 代碼如下:

        var nul = null;

        var na = NaN;

        var test;

        test = na&&nul;

        document.write(test); //NaN

        復制代碼 代碼如下:

        var nul = null;

        var na = NaN;

        var test;

        test = nul&&na;

        document.write(test); //null

        3、邏輯或||

        邏輯或有兩個操作數(shù)。

        邏輯或與邏輯與相似,操作可以應(yīng)用于任何類型的操作數(shù),而不僅僅是布爾值。在有一個操作數(shù)不是布爾值的情況下,邏輯或操作就不一定返回布爾值;此時,它遵循一下規(guī)則:

        1. 如果第一個操作數(shù)是對象,則返回第一個操作數(shù);

        2. 如果第一個操作數(shù)的結(jié)果是false,則返回第二個操作數(shù);

        3. 如果兩個操作符都是對象,則返回第一個操作數(shù),遵循第一條規(guī)則。

        4. 如果兩個操作數(shù)都是null,則返回null;

        5. 如果兩個操作數(shù)都是NaN,則返回NaN;

        6. 如果兩個操作數(shù)都是undefined,則返回undefined。

        邏輯或操作屬于短路操作,即如果第一操作數(shù)結(jié)果為true,那么就不會再對第二個操作數(shù)求值。

        我們可以利用邏輯或的這個特性來避免為變量賦null或undefined的值

        例如:var myObject = firstObject||secondObject

        如果firstObject不是null,則firstObject被賦值給myObject,否則將secondObject的值賦給myObject.

      【JavaScript 學習筆記:操作符】相關(guān)文章:

      JavaScript學習筆記08-24

      關(guān)于數(shù)據(jù)類型的Javascript學習筆記08-05

      整理Javascript基礎(chǔ)語法學習筆記欣賞08-04

      JavaScript學習歷程和心得范文(精選10篇)02-13

      對javascript的理解08-08

      常用的JavaScript模式09-22

      Javascript的this用法簡述08-15

      JavaScript 基礎(chǔ)教學09-29

      JavaScript的課堂講解09-03

      淺談如何深入學習Javascript中的this關(guān)鍵字08-19

      主站蜘蛛池模板: 亚洲区1区3区4区中文字幕码| 左云县| 精品午夜一区二区三区久久| 林州市| 亚洲精品国产熟女久久| 在线观看视频区一区二| 承德市| 扶风县| 日韩一区二区三区中文字幕| 无码精品人妻一区二区三区98| 日韩无码电影| 中江县| 国产粉嫩嫩00在线正在播放 | 国产午夜av一区二区三区| 方城县| 巧家县| 最新亚洲av日韩av二区一区| 91狼友在线观看免费完整版| 日本一区二区三区在线观看免费| 亚洲乱码中文字幕综合| 97av在线播放| 双流县| 凭祥市| 浏阳市| 宣恩县| 莲花县| 平湖市| 贵溪市| 亚洲欧美日韩精品高清| 屏南县| 出国| 亚洲综合自拍偷拍视频| 亚洲精品中文有码字幕| 巴彦淖尔市| 游戏| 亚洲区一区二区中文字幕 | 久9热免费精品视频在线观看| 久久国产精品老人性| 一本一本久久a久久精品综合| 国产欧美日韩图片一区二区| 日韩中文字幕久久久经典网|