js中偽陣列(也叫類陣列)

2021-10-25 10:17:33 字數 1584 閱讀 8332

* object物件

* length屬性

* 數值下標屬性

* 沒有陣列特別的方法: foreach(), push(), pop(), splice()

// 自定義乙個偽陣列

var weiarr =

weiarr.length =

0 weiarr[0]

="zjw"

weiarr.length =

1 weiarr[1]

="after"

weiarr.length =

2for

(var i =

0; i < weiarr.length; i++

)//偽陣列是乙個 object,而真實的陣列是乙個 array

console.

log(weiarr instanceof

array

)//false

console.

log(weiarr instanceof

object

)//true

console.

log(weiarr.foreach,weiarr.push)

//undefined undefined

<

/script>

<

/script>

2.1用array.isarray

array.

isarray

(weiarray)

===false

;array.

isarray

(arr)

===true

;

2.2用instanof

console.

log(weiarrayinstanceof array)

//false

console.

log(arr instanceof

array

)//true

1.jquery 物件(比如 $(「div」) )

2.函式內部的 arguments

3.dom 物件列表(比如通過 document.getelementsbytags ,document.childnodes返回的nodelist物件)

偽陣列存在的意義,是可以讓普通的物件也能正常使用陣列的很多方法(push和foreach等)

function

fun(x,y)

fun(1,

2)<

/script>

可以使用array.prototype.slice.call(fakearray)將陣列轉化為真正的array物件

function

fun(x,y)

fun(1,

2)<

/script>

Javascript 偽陣列 js中的偽陣列

js中允許以鍵值対的方式來儲存屬性,並以下標的方式來訪問,我們再手動給它加上一些類似陣列的方法,便可以模擬出和陣列一樣的操作 建立乙個偽陣列 let v new object v.length 2 v 0 ok v 1 hello v a aaa v window window v name nam...

js中的偽陣列

偽陣列也稱為類陣列,它本身也是物件,但具有以下特點 1.按索引方式儲存資料 2.具有length屬性 3.沒有陣列的push pop等方法 有哪些常用的偽陣列呢?function的arguments物件,還有getelementsbytagname等,自定義的某些物件。如何轉換為標準陣列?1 arr...

JS中的偽陣列

一.維陣列和陣列的區別 a 真陣列的長度是可變的,是內建的屬性 偽陣列的長度不可變,是自定義的乙個屬性 b 真陣列可以使用陣列中的方法 偽陣列不可以實用陣列中的方法 c 真陣列可以訪問陣列的方法 偽陣列不能直接訪問陣列的方法1.陣列物件 具備自己本身的原型意外,還具備object裡的原型資料 由於a...