2016-07-12 48 views

回答

2

我認爲原因是:

  • 在ECMAScript中,類型的開頭大寫:

    UndefinedNullBooleanNumberStringSymbolObject

  • undefined和null是僅有一個值的兩種類型,它們與該類型具有相同的名稱。但它會太混亂,如果情況也是一樣的,所以他們用小寫:

    undefinednull

  • NaN有這個外殼,因爲它是一個IEEE 754-2008「不是一個數字」值

    不是非數字⟶NaN

  • Infinity可以用大寫字母開頭,因爲沒有類型,稱爲無限。我想也可以從小寫開始,但也許他們想要類似於NaN(?)

+0

我明白了,這會更有意義,它可能會更好,但我想現在不會改變它,因爲它會中斷基本上是用JS編寫的每一段代碼。 – thephpdev

3

沒有人知道。 :-(


(原來的答覆如下)

純猜測,但…

  • null undefined是JavaScript關鍵字 小號 ,反映各種「未價值「metawackery。我知道的所有關鍵字都是小寫(參見true,false);
  • undefined是代表甚至更​​多的全局屬性 metawackery;
  • InfinityNaN是反映IEEE浮點標識值的全局屬性,並且來自該第三方規範的直接(ish)。

所以我可以看到爲什麼不同的案例會在這裏發揮作用:蘋果和橘子。

在我看來,真正的問題是爲什麼最後兩個不是Math.INFINITYMath.NAN

+1

嘆氣。我希望undefined真的是一個關鍵字。 –

+0

@TamasHegedus:噢,球,不是嗎? –

+0

在Java中,它是'NaN',沒有特殊原因。也許這個小寫'''啓發'Infinity'。 – tadman

相關問題