欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

javascript中的=等號個(gè)數(shù)問題兩個(gè)跟三個(gè)有什么區(qū)別

 更新時(shí)間:2013年10月23日 17:03:07   作者:  
一個(gè)等號就是個(gè)賦值的作用,主要問題在于兩個(gè)跟三個(gè)等號的區(qū)別,想必有很多的朋友都不知道吧,在本文有個(gè)不錯(cuò)的示例主要介紹下兩者到底有什么區(qū)別,感興趣的朋友不要錯(cuò)過
一個(gè)等號就是個(gè)賦值的作用,主要問題在于兩個(gè)跟三個(gè)等號的區(qū)別。
javaScript中兩個(gè)等于號和三個(gè)等于號之間的區(qū)別

一言以蔽之:==先轉(zhuǎn)換類型再比較,===先判斷類型,如果不是同一類型直接為false。
===表示恒等于,比較的兩邊要絕對的相同

alert(0 == ""); // true
alert(0 == false); // true
alert("" == false); // true

alert(0 === ""); // false
alert(0 === false); // false
alert("" === false); // false

先說 ===,這個(gè)比較簡單,具體比較規(guī)則如下:
1、如果類型不同,就[不相等]
2、如果兩個(gè)都是數(shù)值,并且是同一個(gè)值,那么[相等];(!例外)的是,如果其中至少一個(gè)是NaN,那么[不相等]。(判斷一個(gè)值是否是NaN,只能用isNaN()來判斷)
3、如果兩個(gè)都是字符串,每個(gè)位置的字符都一樣,那么[相等];否則[不相等]。
4、如果兩個(gè)值都是true,或者都是false,那么[相等]。
5、如果兩個(gè)值都引用同一個(gè)對象或函數(shù),那么[相等];否則[不相等]。
6、如果兩個(gè)值都是null,或者都是undefined,那么[相等]。

再說 ==,具體比較規(guī)則如下:

1、如果兩個(gè)值類型相同,進(jìn)行 === 比較,比較規(guī)則同上
2、如果兩個(gè)值類型不同,他們可能相等。根據(jù)下面規(guī)則進(jìn)行類型轉(zhuǎn)換再比較:
a、如果一個(gè)是null、一個(gè)是undefined,那么[相等]。
b、如果一個(gè)是字符串,一個(gè)是數(shù)值,把字符串轉(zhuǎn)換成數(shù)值再進(jìn)行比較。
c、如果任一值是 true,把它轉(zhuǎn)換成 1 再比較;如果任一值是 false,把它轉(zhuǎn)換成 0 再比較。
d、如果一個(gè)是對象,另一個(gè)是數(shù)值或字符串,把對象轉(zhuǎn)換成基礎(chǔ)類型的值再比較。對象轉(zhuǎn)換成基礎(chǔ)類型,利用它的toString或者valueOf方法。js核心內(nèi)置類,會(huì)嘗試valueOf先于toString;例外的是Date,Date利用的是toString轉(zhuǎn)換。非js核心的對象,令說(比較麻煩,我也不大懂)
e、任何其他組合(array數(shù)組等),都[不相等]。

當(dāng)一個(gè)人找不到出路的時(shí)候,最好的辦法就是將當(dāng)前能做好的事情做到極致,做到無人能及。

相關(guān)文章

  • 解讀document.querySelector()方法

    解讀document.querySelector()方法

    這篇文章主要介紹了document.querySelector()方法的使用,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • 「中高級前端面試」JavaScript手寫代碼無敵秘籍(推薦)

    「中高級前端面試」JavaScript手寫代碼無敵秘籍(推薦)

    這篇文章主要介紹了JavaScript手寫代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • JS和jquery獲取各種屏幕的寬度和高度的代碼

    JS和jquery獲取各種屏幕的寬度和高度的代碼

    這篇文章介紹了JS和jquery獲取各種屏幕的寬度和高度的代碼,有需要的朋友可以參考一下
    2013-08-08
  • ajax不執(zhí)行success回調(diào)而是執(zhí)行了error回調(diào)

    ajax不執(zhí)行success回調(diào)而是執(zhí)行了error回調(diào)

    最近在看jQuery的API文檔,在使用到j(luò)Query的ajax時(shí),如果指定了dataType為json,老是不執(zhí)行success回調(diào),而是執(zhí)行了error回調(diào)函數(shù),極度郁悶
    2012-12-12
  • javascript流程控制語句集合

    javascript流程控制語句集合

    流程控制語句在JS中是至關(guān)重要的。JS中的流程控制語句包括if條件判斷語句、for循環(huán)語句、while循環(huán)語句、do……while循環(huán)語句、break語句、continue語句和switch語句等7種語句,需要的朋友可以參考下
    2017-09-09
  • 探尋JavaScript中this指針指向

    探尋JavaScript中this指針指向

    JavaScript由于其在運(yùn)行期進(jìn)行綁定的特性,JavaScript 中的 this 可以是全局對象、當(dāng)前對象或者任意對象,這完全取決于函數(shù)的調(diào)用方式。
    2016-04-04
  • 淺談js的setInterval事件

    淺談js的setInterval事件

    這篇文章主要介紹了js的setInterval方法的用法以及示例,非常的有用,這里推薦給小伙伴們
    2014-12-12
  • JavaScript初學(xué)者應(yīng)注意的七個(gè)細(xì)節(jié)詳細(xì)介紹

    JavaScript初學(xué)者應(yīng)注意的七個(gè)細(xì)節(jié)詳細(xì)介紹

    種種語言都有它特別的地方,對于JavaScript來說,使用var就可以聲明任意類型的變量,這門腳本語言看起來很簡單,然而想要寫出優(yōu)雅的代碼卻是需要不斷積累經(jīng)驗(yàn)的,接下來介紹初學(xué)者應(yīng)注意
    2012-12-12
  • De facto standard 世界上不可思議的事實(shí)標(biāo)準(zhǔn)

    De facto standard 世界上不可思議的事實(shí)標(biāo)準(zhǔn)

    前些天IEBlog中提到實(shí)現(xiàn)互通并不是只靠標(biāo)準(zhǔn)就行,其中舉出了一些關(guān)于事實(shí)上的標(biāo)準(zhǔn)的考慮——所謂“事實(shí)上的標(biāo)準(zhǔn)”,也就是并非標(biāo)準(zhǔn),但大家都遵循著它去做事情的那么一種東西。
    2010-08-08

最新評論