js類陣列物件(array-like objects)簡單介紹
在一些關於javascript文章中,可能會有類陣列這個名詞的提及。
也有把物件當做一個陣列操作的例子,看如下程式碼例項:
[JavaScript] 純文字檢視 複製程式碼function func(a,b,c,d){ var arr=[].slice.call(arguments); console.log(arr); } func(1,2,3,4);
上面的程式碼中可以將arguments物件轉換為一個真正的陣列,呼叫的是陣列的slice()方法。
arguments物件就是一個類陣列(array-like objects)。
那麼如何判斷什麼樣的物件才是一個類陣列,下面就做一下簡單介紹:
網上的資料對於類陣列的解釋如下:
[HTML] 純文字檢視 複製程式碼So what exactly makes an object “array-like”? The basic contract of an array object amounts to two simple rules. It has an integer length property in the range 0...2^32 – 1. The length property is greater than the largest index of the object. An index is an integer in the range 0...2^32 – 2 whose string representation is the key of a property of the object.
從上面的文字可以看出,類陣列物件主要有如下幾個特徵:
(1).物件要有一個屬性值為整數的length屬性,並且值得大小介於0到2^32 – 1之間。
(2).length屬性值要大於物件的最大的index屬性值。
(3).index屬性是作為物件的屬性的key存在的。
再來看一段程式碼例項:
[JavaScript] 純文字檢視 複製程式碼1: "a", 2: "b", 4: "c", length:5 } var arr=[].slice.call(obj); console.log(arr)
上面的程式碼也可以正確執行,但是並不是所有的array物件的方法都可以被類陣列物件使用。
相關文章
- Array-like類陣列物件陣列物件
- 簡單介紹js 陣列 fill() 填充方法JS陣列
- JSON物件簡單介紹JSON物件
- js宣告陣列的幾種方式簡單介紹JS陣列
- javascript陣列操作簡單介紹JavaScript陣列
- javascript關聯陣列簡單介紹JavaScript陣列
- JavaScript 特殊物件 Array-Like Objects 詳解JavaScript物件Object
- json字串與json物件簡單介紹JSON字串物件
- js將陣列轉換成CSV格式的方法簡單介紹JS陣列
- javascript物件簡單介紹JavaScript物件
- 簡單介紹Lua一維陣列與多維陣列的使用陣列
- javascript陣列的map()函式用法簡單介紹JavaScript陣列函式
- javascript過濾陣列中的元素簡單介紹JavaScript陣列
- javascript建立物件簡單介紹JavaScript物件
- JSON簡單介紹JSON
- nodejs簡單介紹NodeJS
- js物件的屬性的運用簡單介紹JS物件
- javascript實現二維陣列實現簡單介紹JavaScript陣列
- JS-陣列、函式、類與物件JS陣列函式物件
- js移除和新增class樣式類簡單介紹JS
- js關於物件直接量的拷貝簡單介紹JS物件
- 簡單介紹最新python 字串陣列互轉問題Python字串陣列
- js WebSocket用法簡單介紹JSWeb
- $.each()方法遍歷陣列和物件簡單物件陣列物件
- jquery動畫佇列簡單介紹jQuery動畫佇列
- jQuery物件轉換為dom物件簡單介紹jQuery物件
- js的屬性物件的specified屬性用法簡單介紹JS物件
- Shell 陣列介紹陣列
- AWK 陣列介紹陣列
- javascript Object型別物件簡單介紹JavaScriptObject型別物件
- 簡單介紹C#使用物件序列化類庫MessasgePackC#物件
- js字串連線簡單介紹JS字串
- js cookie路徑簡單介紹JSCookie
- js 特權方法簡單介紹JS
- js短路運算簡單介紹JS
- js與&&運算子簡單介紹JS
- js如何阻止表單提交簡單介紹JS
- dom物件和jQuery物件相互轉換簡單介紹物件jQuery