數(shù)組和類數(shù)組對(duì)象有什么區(qū)別
數(shù)組和類數(shù)組對(duì)象都可以用索引訪問(wèn)弄屡,并具有l(wèi)ength屬性,不同是類數(shù)組不能調(diào)用數(shù)組的方法窿侈。什么是類數(shù)組對(duì)象
- 擁有l(wèi)ength屬性
- 元素保存在對(duì)象中占遥,可以通過(guò)索引訪問(wèn)
- 但是沒(méi)有數(shù)組的其他方法像捶,例如:push、slice冀痕、indexOf等
var foo = {
0: 'Java',
1: 'Python',
2: 'JavaScript',
length: 3
};
// 因?yàn)閒oo對(duì)象本身并沒(méi)有slice方法斥黑,所以通過(guò)call調(diào)用
var arr = Array.prototype.slice.call(foo); // [‘Java’,’Python’,’JavaScript’]
常見(jiàn)的類數(shù)組對(duì)象
javascript中常見(jiàn)的類數(shù)組有arguments對(duì)象和DOM方法的返回結(jié)果。
比如 document.getElementsByTagName()楷力。類數(shù)組轉(zhuǎn)化為數(shù)組
Array.prototype.slice.call()
Array.from()