1
A
回答
4
是數字1投隱含一個空數組?
號數值是隱式地(並且暫時)轉換爲數字對象和屬性1
被該對象上訪問。
的括號符號您使用([1]
)不是特定於陣列,每對象屬性可以通過托架符號來訪問。即以下兩個是等效的:obj.foo
(點符號)和obj['foo']
(括號表示法)。
數量的對象但沒有財產1
和訪問一個不存在的屬性返回undefined
:
var numObj = new Number(1);
console.log(numObj[1]);
的隱式轉換髮生的每訪問一個時間財產在原始值,財產是否存在或不是。在以下示例中,原始數值也被隱式轉換爲一個對象,然後執行它的toFixed
方法:
var num = 42;
console.log(num.toFixed(2));
// or equivalently to your example:
console.log(42['toFixed'](2))
數字,字符串,布爾和符號具有對象當量。空和未定義不。
相關問題
- 1. 在Ruby中,爲什麼nil [1] = 1評估爲零?
- 2. 這爲什麼評估爲未定義在JavaScript中?
- 3. Common Lisp爲什麼(列表+ 1 2)評估爲('(+ 1 2)1 2)
- 4. 爲什麼-1/2在C++中評估爲0,但在Python中爲-1?
- 5. 爲什麼表達式(0 == 0&1 == 1)評估爲False?
- 6. 爲什麼「(奇數和1)= 1」評估爲真?
- 7. 爲什麼「{1:'a',True:'b',1.0:'c',1.00:'d'}」評估爲「{1:'d'}」?
- 8. 爲什麼$((true == false))在bash中評估爲1?
- 9. 爲什麼`to_unsigned(0,4)> = -1`在運行時評估爲`FALSE`?
- 10. 爲什麼評估「(Double.MinValue + 1)> Double.MinValue」爲false?
- 11. 爲什麼「(1/6)*(66.900009-62.852596)」評估爲零?
- 12. 爲什麼[1] .append(2)評估爲None而不是[1,2]?
- 13. 爲什麼+和*分別評估爲0和1?
- 14. 錯誤:未定義不是對象(正在評估'ProfileService.getProfile(1).then')
- 15. 在Javascript中,爲什麼[1,2] == [1,2]或({a:1})==({a:1})爲false?
- 16. 爲什麼Python需要永遠評估1 ** 4 ** 4 ** 4 ** 4?
- 17. 爲什麼在VB.Net中評估爲false?
- 18. Igraph中的度集中化R-星圖未評估爲1
- 19. 爲什麼_ = $ = + [],++ _ +''+ $評估爲10
- 20. 爲什麼event.target.value在javascript中未定義?
- 21. 爲什麼在JavaScript中返回-1
- 22. 在VB爲什麼(1 = 1)爲假
- 23. 爲什麼ng-animate未被評估?
- 24. 爲什麼三引號字符串中的「\ 1」評估爲unicode 0x1代碼點
- 25. 爲什麼javascript函數評估onload
- 26. 爲什麼「1」等於「+1」?
- 27. 爲什麼[1,[2,3] = [1,[2,3]]
- 28. 在JavaScript:爲什麼parseInt(「08」)評估爲零,但parseInt(08)評估罰款?
- 29. 在JavaScript中,爲什麼~~ Infinity評估爲0?
- 30. 爲什麼這個表達式在JavaScript中被評估爲「a」?
'1'是個'Number' – hackerrdave
,因爲Number沒有屬性'1'。 (1)[1]'與[(新數字(1))[1]'相同' – Thomas
與[爲什麼'0 [0]'語法有效?]( http://stackoverflow.com/questions/29250950/why-is-00-syntactically-valid/29251025#29251025) – jfriend00