更新時(shí)間:2020-08-25 15:54:27 來源:動(dòng)力節(jié)點(diǎn) 瀏覽2582次
字符串和數(shù)組的相互轉(zhuǎn)換操作是非常的重要的,因?yàn)樵趯?shí)際編碼過程中會(huì)經(jīng)常用到,所以這是必須要掌握的知識點(diǎn),當(dāng)然這個(gè)知識點(diǎn)并不難,知道了就永遠(yuǎn)知道了,并不是那種需要充分實(shí)踐才能夠掌握的東西,下面就做一下簡單的介紹。
一.字符串轉(zhuǎn)換為數(shù)組:
此操作會(huì)用到split()函數(shù),它能夠以指定的字符作為分隔符,將字符串轉(zhuǎn)換成一個(gè)數(shù)組,實(shí)例代碼如下:

二.將數(shù)組轉(zhuǎn)換為字符串:
此操作可以使用Array對象的join()函數(shù)來實(shí)現(xiàn),此函數(shù)可以將數(shù)組中的元素以指定的字符連接起來,然后返回產(chǎn)生的字符串。
代碼如下:

以上代碼實(shí)現(xiàn)了我們的要求,使用"-"將數(shù)組元素連接了起來,并生成了一個(gè)字符串。
上面的兩個(gè)例子都是使用的自帶的函數(shù),當(dāng)然我們也可以自己寫,這樣靈活性更大,并且知根知底。
三.自定義字符串轉(zhuǎn)換為數(shù)組:

以上代碼同樣實(shí)現(xiàn)了將字符串轉(zhuǎn)換為數(shù)組的功能,下面對代碼進(jìn)行一下注釋:
代碼注釋:
1.function StringToArray(str,substr){},此函數(shù)用來進(jìn)行轉(zhuǎn)化,str是要被轉(zhuǎn)換的字符串,substr是分隔符。
2.var arrTmp=new Array(),聲明一個(gè)數(shù)組,用來存放分割的字符串片段。
3.if(substr==""){arrTmp.push(str);return arrTmp;},如果字符串分隔符為空,那么就將整個(gè)字符串放入數(shù)組。
4.var i=0,j=0,k=str.length;聲明三個(gè)變量,并賦初值,k的值是字符串中字符的個(gè)數(shù)。
5.while(i<k){},一個(gè)while循環(huán)語句,執(zhí)行的條件是i的值小于k也就是小于字符串中字符的個(gè)數(shù)。
6.j=str.indexOf(substr,i),用來檢測分隔符在字符串出現(xiàn)的位置,如果indexOf()函數(shù)帶有兩個(gè)參數(shù)的,第二個(gè)參數(shù)是查找指定字符開始的位置,這段代碼要結(jié)合下面的代碼理解。
7.if(j!=-1),如果查找的分隔符存在。
8.if(str.substring(i,j)!=""){},截取從開始查找位置到查找到第一個(gè)分隔符之間的字符串。
9.arrTmp.push(str.substring(i,j));,將截取的字符串放入數(shù)組。
10.i=j+1;將開始查找的位置設(shè)置為分隔符的下一個(gè)字符。
11.else{},如果沒有查找。
12.if(str.substring(i,k)!=""){arrTmp.push(str.substring(i,k));},如果最后一個(gè)分隔符之后的字符不為空,那么就添加到數(shù)組。
13.i=k,將i設(shè)置為k,這樣循環(huán)就停止了。
14.return arrTmp;返回?cái)?shù)組。
四.自定義數(shù)組轉(zhuǎn)換為字符串:

以上代碼實(shí)現(xiàn)了我們的要求,可以將數(shù)組轉(zhuǎn)換為字符串,下面對代碼進(jìn)行一下注釋:
代碼注釋:
1.function ArrayToString(arr,str){},第一個(gè)參數(shù)是數(shù)組,第二個(gè)參數(shù)是連接字符串。
2.var strTmp="",聲明一個(gè)空字符串。
3.for(var i=0;i<arr.length;i++){},遍歷數(shù)組中的每一個(gè)元素。
4.f(arr!=""){}如果數(shù)組元素不為空。
5.if(strTmp==""){strTmp=arr;},如果字符串中也為空,那么就將數(shù)組中的此元素賦值給字符串strTmp。
6.else{strTmp=strTmp+str+arr},否則進(jìn)行字符串連接。
7.return strTmp,返回轉(zhuǎn)換后的字符串。

以上就是動(dòng)力節(jié)點(diǎn)java培訓(xùn)機(jī)構(gòu)的小編針對“Javascript中字符串和數(shù)組的相互轉(zhuǎn)換”的內(nèi)容進(jìn)行的回答,希望對大家有所幫助,如有疑問,請?jiān)诰€咨詢,有專業(yè)老師隨時(shí)為你服務(wù)。
相關(guān)閱讀

初級 202925

初級 203221

初級 202629

初級 203743