close
用Object.key(obj).length來取(但是要看瀏覽器有沒有支援,IE9以後才有支援)
--
轉自 http://jayden.logdown.com/posts/164794-javascript-an-objects-length-and-the-length-of-the-array
--
今天看到一個特別的例子,如下:
相信很多人的直覺都是alert
出3
。但偏偏javascript就是給你alert
出2
。
經過研究一下才發現,原來在Javascripr裡面,物件長度跟陣列長度不能夠混為一談。
當我們要取陣列(array)長度的時候,可以直接用arr.length
來取得。
但是若arr是一個物件(object)的話,便無法用length
來取得長度。
所以你用length
屬性去取東西的時候,當然就只會回傳Array認得的元素啦!
如果我們直接用length
來取得物件(object)長度會怎樣呢? 舉例:
其結果會是undefined
。
要取得物件(object)的長度有兩個辦法。
- 用迴圈來取
- 用Object.key(obj).length來取(但是要看瀏覽器有沒有支援,IE9以後才有支援)
全站熱搜
留言列表