Home >Web Front-end >JS Tutorial >js implements conversion operations between strings and arrays
The example of this article introduces the mutual conversion method of strings and arrays in JavaScript, and shares it with everyone for your reference. The specific content is as follows
The mutual conversion operation of strings and arrays is very important, because in the actual encoding process It is often used in the Chinese Communist Party, so this is a knowledge point that must be mastered. Of course, this knowledge point is not difficult. Once you know it, you will know it forever. It is not something that requires sufficient practice to master. Let’s do a simple introduce.
1. Convert a string to an array
This operation will use the split() function, which can use the specified character as the separator to convert the string into an array. The example code is as follows:
var Str="abc-mng-zhang-mayi"; var newArray=Str.split("-"); console.log(newArray);
It can be seen from the output that the split() function has converted the string into an array.
2. Convert the array to a string
This operation can be achieved using the join() function of the Array object. This function can connect the elements in the array with specified characters and then return the resulting string.
The code is as follows:
var newArray=["abc","mng","zhang","mayi"]; var Str=newArray.join("-"); console.log(Str);
The above code realizes our requirements, using "-" to connect the array elements and generate a string.
The above two examples are all using the built-in functions. Of course, we can also write our own, which will be more flexible and know the basics.
3. Convert a custom string to an array
function StringToArray(str,substr) { var arrTmp=new Array(); if(substr=="") { arrTmp.push(str); return arrTmp; } var i=0,j=0,k=str.length; while(i<k) { j=str.indexOf(substr,i); if(j!=-1) { if(str.substring(i,j)!="") { arrTmp.push(str.substring(i,j)); } i = j+1; } else { if(str.substring(i,k)!="") { arrTmp.push(str.substring(i,k)); } i=k; } } return arrTmp; } var Str="abc-mng-zhang-mayi"; console.log(StringToArray(Str,"-")); console.log(StringToArray(Str,"-").length);
The above code also implements the function of converting a string into an array. Here are some comments on the code:
Code comments:
1.function StringToArray(str,substr){}, this function is used for conversion, str is the string to be converted, and substr is the delimiter.
2. var arrTmp=new Array(), declares an array to store split string fragments.
3.if(substr=="") {arrTmp.push(str);return arrTmp;}, if the string delimiter is empty, then the entire string is put into the array.
4. var i=0,j=0,k=str.length; Declare three variables and assign initial values. The value of k is the number of characters in the string.
5.while(i
7.if(j!=-1), if the searched separator exists.
8.if(str.substring(i,j)!=""){}, intercept the string from the starting search position to the first delimiter.
9.arrTmp.push(str.substring(i,j));, put the intercepted string into the array.
10.i=j+1; Set the starting position of the search to the next character of the separator.
11.else{}, if not found.
12.if(str.substring(i,k)!=""){arrTmp.push(str.substring(i,k));}, if the character after the last delimiter is not empty, then Just add it to the array.
13.i=k, set i to k, so the loop stops.
14.return arrTmp; Returns an array.
Related knowledge:
1. Definition and usage of push() method:
This method can append one or more new elements to the end of the specified array and return the length of the array.
Note: New elements are appended directly to the original array instead of creating a new array.
Click to see more properties and methods of the array.
Syntax structure:
arrayObject.push(element one,element two,....,element N)
Parameter list:
Parameter description
Parameter (one... N) Required. The new element to be appended.
Instance code:
var a = [1,2,3]; console.log(a.push("zhang","dao"));
2.Definition and usage of indexOf() method:
This method returns the first occurrence of the specified string in the string Location.
If the corresponding string is not retrieved, the return value is -1.
Note: This method is case sensitive.
Syntax structure:
stringObject.indexOf(substring,startindex)
Instance code:
var a=new String("abcdefg") console.log(a.indexOf("b"));
b appears second in the string abcdefg. Output results: 1.
var a=new String("abcdefg") console.log(a.indexOf("b"));
This method is case-sensitive, so there is no uppercase B in the string abcdefg. Output result: -1.
var a=new String("abcdefg") console.log(a.indexOf("e",4));
The starting position of the search is 4, and the position where the string first appears is calculated from the beginning of the string. Output result: 4.
3.substring() function.
4. Convert custom array to string
function ArrayToString(arr,str) { var strTmp=""; for(var i=0;i<arr.length;i++) { if(arr[i]!="") { if(strTmp=="") { strTmp = arr[i]; } else { strTmp=strTmp+str+arr[i]; } } } return strTmp; } var newArray=["abc","mng","zhang","mayi"]; console.log(ArrayToString(newArray,"-"));
The above code meets our requirements and can convert the array into a string. Let’s comment on the code:
Code comments:
1.function ArrayToString(arr,str){}, the first parameter is the array, and the second parameter is the connection string.
2.var strTmp="", declares an empty string.
3.for(var i=0;i
5.if(strTmp=="") {strTmp=arr;}, if the string is also empty, then assign this element in the array to the string strTmp.
6.else{strTmp=strTmp+str+arr}, otherwise perform string concatenation.
7.return strTmp, return the converted string.
The above is the detailed code for converting between strings and arrays in js. I hope it will be helpful to everyone's learning.
For more articles related to js implementation of conversion operations between strings and arrays, please pay attention to the PHP Chinese website!