Prototype使用指南之a(chǎn)rray.js
更新時(shí)間:2007年01月10日 00:00:00 作者:
$A = Array.from(iterable): 將iterable轉(zhuǎn)化為數(shù)組,如果iterable定義了toArray方法,就調(diào)用這個(gè)方法,否則利用iterable的length屬性進(jìn)行枚舉, 如果iterable沒(méi)有l(wèi)ength屬性的話就返回空數(shù)組[]
Array對(duì)象除了擴(kuò)展Enumerable對(duì)象的方法外,另外擴(kuò)展了如下的幾個(gè)方法,
注意以下方法除了clear外都不改變?cè)瓉?lái)數(shù)組,而是返回一個(gè)新數(shù)組:
clear(): 清除數(shù)組,利用arr.length=0
first(): 返回第一個(gè)元素
last():返回最后一個(gè)元素
compact(): 去除數(shù)組中值為null或undefined的元素
flatten(): 將數(shù)組扁平化,例如[3,4,[6,7]]變?yōu)閇3,4,6,7]
without(): 去除指定的元素, 可以指定多個(gè)值, 例如[4,56,7,8].without(4,7) 返回[56,8]
indexOf(object): 返回指定的元素在數(shù)組中的索引,不包含則返回-1
reverse(inline):Array內(nèi)置函數(shù)reverse的增強(qiáng),當(dāng)inline為true時(shí),跟內(nèi)置的reverse函數(shù)效果一樣,改變?cè)瓟?shù)組的值,否則不改變?cè)瓉?lái)的值
reduce(): 如果數(shù)組只有一個(gè)元素,則返回這個(gè)元素,否則返回?cái)?shù)組本身
uniq(): 返回沒(méi)有重復(fù)元素的數(shù)組
clone(): 返回一個(gè)跟數(shù)組相同的數(shù)組,Array中的toArray方法覆蓋了Enumerable中的toArray方法,指向了這個(gè)方法
inspect(): 跟數(shù)組的toString方法類似,返回對(duì)象的字符串表示,例如[2,3].inspect() 返回 "[2,3]"
Array對(duì)象除了擴(kuò)展Enumerable對(duì)象的方法外,另外擴(kuò)展了如下的幾個(gè)方法,
注意以下方法除了clear外都不改變?cè)瓉?lái)數(shù)組,而是返回一個(gè)新數(shù)組:
clear(): 清除數(shù)組,利用arr.length=0
first(): 返回第一個(gè)元素
last():返回最后一個(gè)元素
compact(): 去除數(shù)組中值為null或undefined的元素
flatten(): 將數(shù)組扁平化,例如[3,4,[6,7]]變?yōu)閇3,4,6,7]
without(): 去除指定的元素, 可以指定多個(gè)值, 例如[4,56,7,8].without(4,7) 返回[56,8]
indexOf(object): 返回指定的元素在數(shù)組中的索引,不包含則返回-1
reverse(inline):Array內(nèi)置函數(shù)reverse的增強(qiáng),當(dāng)inline為true時(shí),跟內(nèi)置的reverse函數(shù)效果一樣,改變?cè)瓟?shù)組的值,否則不改變?cè)瓉?lái)的值
reduce(): 如果數(shù)組只有一個(gè)元素,則返回這個(gè)元素,否則返回?cái)?shù)組本身
uniq(): 返回沒(méi)有重復(fù)元素的數(shù)組
clone(): 返回一個(gè)跟數(shù)組相同的數(shù)組,Array中的toArray方法覆蓋了Enumerable中的toArray方法,指向了這個(gè)方法
inspect(): 跟數(shù)組的toString方法類似,返回對(duì)象的字符串表示,例如[2,3].inspect() 返回 "[2,3]"
相關(guān)文章
Prototype Selector對(duì)象學(xué)習(xí)
這個(gè)對(duì)象在幫助文檔上并沒(méi)有,但是這個(gè)對(duì)象確是整個(gè)DOM操作的核心類,工具函數(shù)$$,其實(shí)就是調(diào)用這個(gè)類的方法2009-07-07prototype Element學(xué)習(xí)筆記(篇二)
這一篇主要是要總論Element的所有函數(shù)。2008-10-10javascript prototype,executing,context,closure
JavaScript是一種靈活的腳本語(yǔ)言。與Java、C++等需要編譯執(zhí)行的程序設(shè)計(jì)語(yǔ)言有很大不同,在使用的過(guò)程中,會(huì)暴露出一些問(wèn)題。2008-12-12JavaScript語(yǔ)法著色引擎(demo及打包文件下載)
JavaScript語(yǔ)法著色引擎(demo及打包文件下載)...2007-06-06Prototype ObjectRange對(duì)象學(xué)習(xí)
ObjectRange對(duì)象基本就是實(shí)現(xiàn)了連續(xù)的數(shù)字或者字符串,其中只包含一個(gè)方法,include,判斷某個(gè)數(shù)字或者字符串是否在ObjectRange里。并且ObjectRange對(duì)象還混入了Enumerable的方法,所以可以直接在ObjectRange對(duì)象上調(diào)用Enumerable對(duì)象里面的方法。2009-07-07Prototype Function對(duì)象 學(xué)習(xí)
這個(gè)對(duì)象就是對(duì)function的一些擴(kuò)充,最重要的當(dāng)屬bind方法,其中wrap方法也很重要,在類繼承機(jī)制里面就是利用wrap方法來(lái)調(diào)用父類的同名方法。2009-07-07Prototype源碼淺析 String部分(三)之HTML字符串處理
現(xiàn)在,String部分轉(zhuǎn)入具體的關(guān)聯(lián)應(yīng)用,分別對(duì)應(yīng)HTML字符串,JSON字符串和HTML中的腳本字符串2012-01-01