• <sub id="h4knl"><ol id="h4knl"></ol></sub>
    <sup id="h4knl"></sup>
      <sub id="h4knl"></sub>

      <sub id="h4knl"><ol id="h4knl"><em id="h4knl"></em></ol></sub><s id="h4knl"></s>
      1. <strong id="h4knl"></strong>

      2. JavaScript中null和undefined的異同

        時(shí)間:2024-06-14 14:44:18 JavaScript 我要投稿
        • 相關(guān)推薦

        JavaScript中null和undefined的異同

          先說(shuō)null,它表示一個(gè)特殊值,常用來(lái)描述“空值”。對(duì)null執(zhí)行typeof運(yùn)算,結(jié)果返回字符串“object”,也就是說(shuō),可以將null認(rèn)為是一個(gè)特殊的對(duì)象值,含義是“非對(duì)象”(感覺(jué)怪怪的)。實(shí)際上,通常認(rèn)為null是它自有類型的唯一一個(gè)成員,它可以表示數(shù)字、字符串和對(duì)象是“無(wú)值”的。

          JavaScript還有第二個(gè)值來(lái)表示值的空缺,就是undefined啦,用未定義的值表示更深層次的“空值”。undefined出現(xiàn)有4種情況:①變量聲明但沒(méi)有初始化時(shí)②要查詢的對(duì)象屬性或數(shù)組的元素不存在時(shí)③如果函數(shù)沒(méi)有任何返回值,則返回undefined④引用沒(méi)有提供實(shí)參的函數(shù)形參的值也只會(huì)得到undefined。

          兩者相同點(diǎn):①正如前面所說(shuō),它們都是“假值”,也就是說(shuō)JavaScript期望使用一個(gè)布爾值時(shí),它們都會(huì)被轉(zhuǎn)換成false;②它們兩個(gè)都不包含任何屬性和方法。

          兩者不同點(diǎn):①null是JavaScript語(yǔ)言的關(guān)鍵字,而undefined是JavaScript預(yù)定義的全局變量,不是關(guān)鍵字。并且,在ECMAScript 3中,undefined是可讀、可寫(xiě)的變量,可以給它賦任何值,這個(gè)錯(cuò)誤在ECMAScript 5中做了修正,在該版本中undefined是只讀的(看到網(wǎng)上說(shuō)現(xiàn)在的瀏覽器基本上都是支持ECMAScript 5了,不知道為什么我在瀏覽器中給undefined賦值沒(méi)有報(bào)錯(cuò),只是并沒(méi)有改變它的值);②執(zhí)行typeof運(yùn)算,null返回“object”字符串,undefined返回“undefined”字符串。

          至于把null和undefined做比較,null == undefined 返回true,null === undefined 返回false。可以認(rèn)為undefined是表示系統(tǒng)級(jí)的、出乎意料的或類似錯(cuò)誤的值的空缺,而null是表示程序級(jí)的、正常的或在意料之中的值的空缺。如果想把它們賦值給變量或?qū)傩曰蛘弋?dāng)做參數(shù)傳入函數(shù),最好選擇使用null。

          以上所述就是本文的全部?jī)?nèi)容了,希望大家能夠喜歡。

        《&.doc》
        将本文的Word文档下载到电脑,方便收藏和打印
        推荐度:
        点击下载文档

        【JavaScript中null和undefined的異同】相關(guān)文章:

        Javascript中arguments對(duì)象的詳解和使用方法08-20

        JavaScript中的with關(guān)鍵字07-24

        在Java中執(zhí)行JavaScript代碼07-14

        Javascript中typeof 用法歸納09-27

        日語(yǔ)JLPT和JTEST的異同09-04

        抽象語(yǔ)法樹(shù)在JavaScript中的應(yīng)用08-18

        JavaScript中的三種對(duì)象10-24

        perl- javascript中class的機(jī)制05-03

        Javascript函數(shù)的定義和用法分析08-15

        JavaScript中push(),join() 函數(shù)實(shí)例詳解09-05

        在线咨询
        国产高潮无套免费视频_久久九九兔免费精品6_99精品热6080YY久久_国产91久久久久久无码
      3. <sub id="h4knl"><ol id="h4knl"></ol></sub>
        <sup id="h4knl"></sup>
          <sub id="h4knl"></sub>

          <sub id="h4knl"><ol id="h4knl"><em id="h4knl"></em></ol></sub><s id="h4knl"></s>
          1. <strong id="h4knl"></strong>

          2. 外国一级AⅤ在线观看 | 中文有码亚洲综合区 | 婷婷六月综合亚洲 | 亚洲欧美国产一区二区三区 | 揄拍视揄拍在线视频菠萝 | 亚洲午夜久久久久久91 |

            JavaScript中null和undefined的異同

              先說(shuō)null,它表示一個(gè)特殊值,常用來(lái)描述“空值”。對(duì)null執(zhí)行typeof運(yùn)算,結(jié)果返回字符串“object”,也就是說(shuō),可以將null認(rèn)為是一個(gè)特殊的對(duì)象值,含義是“非對(duì)象”(感覺(jué)怪怪的)。實(shí)際上,通常認(rèn)為null是它自有類型的唯一一個(gè)成員,它可以表示數(shù)字、字符串和對(duì)象是“無(wú)值”的。

              JavaScript還有第二個(gè)值來(lái)表示值的空缺,就是undefined啦,用未定義的值表示更深層次的“空值”。undefined出現(xiàn)有4種情況:①變量聲明但沒(méi)有初始化時(shí)②要查詢的對(duì)象屬性或數(shù)組的元素不存在時(shí)③如果函數(shù)沒(méi)有任何返回值,則返回undefined④引用沒(méi)有提供實(shí)參的函數(shù)形參的值也只會(huì)得到undefined。

              兩者相同點(diǎn):①正如前面所說(shuō),它們都是“假值”,也就是說(shuō)JavaScript期望使用一個(gè)布爾值時(shí),它們都會(huì)被轉(zhuǎn)換成false;②它們兩個(gè)都不包含任何屬性和方法。

              兩者不同點(diǎn):①null是JavaScript語(yǔ)言的關(guān)鍵字,而undefined是JavaScript預(yù)定義的全局變量,不是關(guān)鍵字。并且,在ECMAScript 3中,undefined是可讀、可寫(xiě)的變量,可以給它賦任何值,這個(gè)錯(cuò)誤在ECMAScript 5中做了修正,在該版本中undefined是只讀的(看到網(wǎng)上說(shuō)現(xiàn)在的瀏覽器基本上都是支持ECMAScript 5了,不知道為什么我在瀏覽器中給undefined賦值沒(méi)有報(bào)錯(cuò),只是并沒(méi)有改變它的值);②執(zhí)行typeof運(yùn)算,null返回“object”字符串,undefined返回“undefined”字符串。

              至于把null和undefined做比較,null == undefined 返回true,null === undefined 返回false。可以認(rèn)為undefined是表示系統(tǒng)級(jí)的、出乎意料的或類似錯(cuò)誤的值的空缺,而null是表示程序級(jí)的、正常的或在意料之中的值的空缺。如果想把它們賦值給變量或?qū)傩曰蛘弋?dāng)做參數(shù)傳入函數(shù),最好選擇使用null。

              以上所述就是本文的全部?jī)?nèi)容了,希望大家能夠喜歡。