본 글은 자바스크립트에서 문자열과 배열의 상호변환 방법을 예시와 함께 소개하고 있으며, 참고하실 수 있도록 모든 분들과 공유합니다
문자열과 배열 사이의 변환 연산은 실제 코딩 과정에서 자주 사용되기 때문에 매우 중요하므로 꼭 숙지해야 할 지식 포인트입니다. 물론 이 지식 포인트도 알고 나면 어렵지 않을 것입니다. 영원히 알기 위해서는 충분한 연습이 필요한 것이 아닙니다. 여기에 간략한 소개가 있습니다.
1. 문자열을 배열로 변환
이 작업에서는 지정된 문자를 구분 기호로 사용하여 문자열을 배열로 변환할 수 있는 분할() 함수를 사용합니다.
var Str="abc-mng-zhang-mayi"; var newArray=Str.split("-"); console.log(newArray);
출력에서 볼 수 있듯이, Split() 함수는 문자열을 배열로 변환했습니다.
2. 배열을 문자열로 변환
이 작업은 Array 객체의 Join() 함수를 사용하여 구현할 수 있습니다. 이 함수는 배열의 요소를 지정된 문자로 연결한 다음 결과 문자열을 반환할 수 있습니다.
코드는 다음과 같습니다.
var newArray=["abc","mng","zhang","mayi"]; var Str=newArray.join("-"); console.log(Str);
위 코드는 "-"를 사용하여 배열 요소를 연결하고 문자열을 생성하여 요구 사항을 구현합니다.
위의 두 가지 예는 모두 내장 함수를 사용합니다. 물론 직접 작성할 수도 있습니다. 그러면 더 유연하고 기본 사항을 알 수 있습니다.
3. 사용자 정의 문자열을 배열로 변환
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);
위 코드는 문자열을 배열로 변환하는 기능도 구현합니다. 코드에 대해 설명하겠습니다.
코드 주석:
1.function StringToArray(str,substr){}, 이 함수는 변환에 사용되며 str은 변환할 문자열, substr은 구분 기호입니다.
2. var arrTmp=new Array(), 분할된 문자열 조각을 저장할 배열을 선언합니다.
3.if(substr=="") {arrTmp.push(str);return arrTmp;}, 문자열 구분 기호가 비어 있으면 전체 문자열이 배열에 배치됩니다.
4. var i=0,j=0,k=str.length; 세 개의 변수를 선언하고 초기 값을 할당합니다. k 값은 문자열의 문자 수입니다.
5.while(i
7.if(j!=-1), 검색된 구분 기호가 존재하는 경우.
8.if(str.substring(i,j)!=""){}, 시작 위치부터 첫 번째 구분 기호까지 문자열을 가로챕니다.
9.arrTmp.push(str.substring(i,j));, 가로채는 문자열을 배열에 넣습니다.
10.i=j 1; 검색 시작 위치를 구분 기호의 다음 문자로 설정합니다.
11.else{}, 검색이 없는 경우.
12.if(str.substring(i,k)!=""){arrTmp.push(str.substring(i,k));}, 마지막 구분 기호 뒤의 문자가 비어 있지 않으면 배열에 추가합니다. .
13.i=k, i를 k로 설정하면 루프가 중지됩니다.
14.return arrTmp; 배열을 반환합니다.
관련 지식:
1.push() 메소드 정의 및 사용법:
이 메소드는 지정된 배열의 끝에 하나 이상의 새 요소를 추가하고 배열의 길이를 반환할 수 있습니다.
참고: 새 배열을 만드는 대신 새 요소가 원래 배열에 직접 추가됩니다.
배열의 추가 속성과 메서드를 보려면 클릭하세요.
문법 구조:
arrayObject.push(요소 1, 요소 2, ...., 요소 N)
매개변수 목록:
매개변수 설명
매개변수(a...N) 필수입니다. 추가할 새 요소입니다.
예제 코드:
var a = [1,2,3]; console.log(a.push("zhang","dao"));
2.indexOf() 메소드 정의 및 사용법:
이 메서드는 문자열에서 지정된 문자열이 처음 나타나는 위치를 반환합니다.
해당 문자열이 검색되지 않으면 반환 값은 -1입니다.
참고: 이 방법은 대소문자를 구분합니다.
문법 구조:
stringObject.indexOf(하위 문자열,startindex)
예제 코드:
var a=new String("abcdefg") console.log(a.indexOf("b"));
b는 문자열 abcdefg에서 두 번째로 나타납니다. 출력 결과: 1.
var a=new String("abcdefg") console.log(a.indexOf("B"));
이 방법은 대소문자를 구분하므로 abcdefg 문자열에 대문자 B가 없습니다. 출력 결과: -1.
var a=new String("abcdefg") console.log(a.indexOf("e",4));
검색 시작 위치는 4이며, 문자열이 처음 나타나는 위치는 문자열의 시작 부분부터 계산됩니다. 출력 결과: 4.
3.substring() 함수.
4. 사용자 정의 배열을 문자열로 변환
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,"-"));
위 코드는 우리의 요구 사항을 충족하며 배열을 문자열로 변환할 수 있습니다. 코드에 대해 설명하겠습니다.
코드 주석:
1.function ArrayToString(arr,str){}, 첫 번째 매개변수는 배열이고 두 번째 매개변수는 연결 문자열입니다.
2.var strTmp="", 빈 문자열을 선언합니다.
3.for(var i=0;i
5.if(strTmp=="") {strTmp=arr;}, 문자열도 비어 있으면 배열의 이 요소를 문자열 strTmp에 할당합니다.
6.else{strTmp=strTmp str arr}, 그렇지 않으면 문자열 연결을 수행합니다.
7. strTmp를 반환하고 변환된 문자열을 반환합니다.
위 내용은 js에서 문자열과 배열을 변환하는 자세한 코드입니다. 모든 분들의 학습에 도움이 되었으면 좋겠습니다.