資源描述:
《21個(gè)值得收藏的Javascript技巧》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫(kù)。
1、21個(gè)值得收藏的Javascript技巧在本文中列出了21個(gè)值得收藏的Javascript技巧,在實(shí)際工作中,如果能適當(dāng)運(yùn)用,則大大提高工作效率。1Javascript數(shù)組轉(zhuǎn)換為CSV格式首先考慮如下的應(yīng)用場(chǎng)景,有一個(gè)Javscript的字符型(或者數(shù)值型)數(shù)組,現(xiàn)在需要轉(zhuǎn)換為以逗號(hào)分割的CSV格式文件。則我們可以使用如下的小技巧,代碼如下:1varfruits=['apple','peaches','oranges','mangoes'];2 varstr=fruits.valueOf();輸出:a
2、pple,peaches,oranges,mangoes其中,valueOf()方法會(huì)將Javascript數(shù)組轉(zhuǎn)變?yōu)槎禾?hào)隔開(kāi)的字符串。要注意的是,如果想不使用逗號(hào)分割,比如用|號(hào)分割,則請(qǐng)使用join方法,如下:3varfruits=['apple','peaches','oranges','mangoes'];4varstr=fruits.join("
3、");輸出:apple
4、peaches
5、oranges
6、mangoes2將CSV格式重新轉(zhuǎn)換回Javscript數(shù)組那么如何將一個(gè)CSV格式的字符
7、串轉(zhuǎn)變回Javascript數(shù)組呢?可以使用split()方法,就可以使用任何指定的字符去分隔,代碼如下:5varstr="apple,peaches,oranges,mangoes";6 varfruitsArray=str.split(",");輸出fruitsArray[0]:apple3根據(jù)索引移除數(shù)組中的某個(gè)元素假如需要從Javascript數(shù)組中移除某個(gè)元素,可以使用splice方法,該方法將根據(jù)傳入?yún)?shù)n,移除數(shù)組中移除第n個(gè)元素(Javascript數(shù)組中從第0位開(kāi)始計(jì)算)。7func
8、tionremoveByIndex(arr,index){8arr.splice(index,1);9}10test=newArray();11test[0]='Apple';12test[1]='Ball';13test[2]='Cat';14test[3]='Dog';1alert("Arraybeforeremovingelements:"+test);2removeByIndex(test,2);3alert("Arrayafterremovingelements:"+test);則最后輸出的
9、為Apple,Ball,Dog4根據(jù)元素的值移除數(shù)組元素中的值下面這個(gè)技巧是很實(shí)用的,是根據(jù)給定的值去刪除數(shù)組中的元素,代碼如下:4functionremoveByValue(arr,val){5for(vari=0;i10、;1617//somearray將會(huì)有的元素是"mon","wed","thur"當(dāng)然,更好的方式是使用prototype的方法去實(shí)現(xiàn),如下代碼:18Array.prototype.removeByValue=function(val){19for(vari=0;i11、28somearray.removeByValue("tue");5通過(guò)字符串指定的方式動(dòng)態(tài)調(diào)用某個(gè)方法有的時(shí)候,需要在運(yùn)行時(shí),動(dòng)態(tài)調(diào)用某個(gè)已經(jīng)存在的方法,并為其傳入?yún)?shù)。這個(gè)如何實(shí)現(xiàn)呢?下面的代碼可以:29varstrFun="someFunction";//someFunction為已經(jīng)定義的方法名30varstrParam="thisistheparameter";//要傳入方法的參數(shù)31varfn=window[strFun];12//調(diào)用方法傳入?yún)?shù)3fn(strParam);6產(chǎn)生1到N的
12、隨機(jī)數(shù)4varrandom=Math.floor(Math.random()*N+1);56//產(chǎn)生1到10之間的隨機(jī)數(shù)7varrandom=Math.floor(Math.random()*10+1);89//產(chǎn)生1到100之間的隨機(jī)數(shù)10varrandom=Math.floor(Math.random()*100+1);7捕捉瀏覽器關(guān)閉的事件我們經(jīng)常希望在用戶(hù)關(guān)閉瀏覽器的時(shí)候,提示用戶(hù)要保存尚未保存的東西,則下面的這個(gè)Javascript技巧是十分有