배열로 작동하는 문자열
2163 단어 javascriptbeginners
다음 설명은 JavaScript(다른 언어와의 기본적인 차이점)와 관련하여 정확하지 않지만 여전히 관련이 있습니다.
기본적으로 문자열은 조작된 문자 배열로 볼 수 있습니다(아래의 예에서처럼 split() 및 join()이 수행하는 방식과 유사).
이러한 조작으로 인해 많은 배열 메서드가 문자열에서 작동하지 않습니다. 몇 가지 대안이 있지만.
문자열이 있게 하십시오:
const str = 'abcde';
다음은 문자열에 배열 메서드를 사용하는 대신 사용할 수 있는 방법입니다. 예를 들면 다음과 같습니다.
const char = str[3];
//=> d
문자는 배열의 요소와 유사하게 이러한 방식으로 액세스할 수 있습니다.
위의 내용은 일반적으로
char = str.charAt(3))
이지만 인덱스 위치 지정을 사용하여 문자를 찾을 수 있습니다.문자열에 다른 배열 메서드를 사용해 봅시다.
const reversedString = str.reverse();
//=>TypeError: str.reverse is not a function
이런!! 오류가 발생했습니다! str은 배열이 아닙니다...
다른 접근 방식을 시도해 보겠습니다.
const arrStr = str.split('');
//=> [ 'a', 'b', 'c', 'd', 'e' ]
보시다시피 split() 메서드를 사용하여 문자열을 배열로 변환했습니다.
이는 다음과 같이 달성할 수도 있습니다:
const arrStr = [...str];
(확산 연산자 사용).이제 배열에서 배열 메서드를 사용할 수 있습니다! reverse()를 다시 시도해 봅시다:
const revArrStr = arrStr.reverse();
//=> [ 'e', 'd', 'c', 'b', 'a' ]
이번엔 아니야, 에러!
다시 문자열이 되려면 문자열이 필요합니다.
const revStr = revArrStr.join('');
//=> 'edcba'
이제 그게 전부입니다!
따라서 split() 메서드를 사용하여 문자열을 배열로 변환한 다음(배열 메서드를 사용하여) 다시 결합(join())할 수 있습니다.
즉, "배열 버전"의 문자열에서 배열로 작업할 수 있습니다.
그러나이 페이지 전체에 낭비되는 문자가 많이 있습니다.
모두 속기하자:
const shortRevStr = str.split('').reverse().join('');
//=> LOG: edcba
짧고 달다!
배열에서 작동하지만 문자열에서 작동하지 않는 다른 메서드는 이러한 '임시' 배열에서도 사용할 수 있습니다.
이러한 방식으로 문자열을 조작하는 기능을 통해 많은 추가 도구에 액세스할 수 있습니다.
데이터 유형 조작을 유리하게 사용하는 몇 가지 방법에 대해 듣고 싶습니다!
Reference
이 문제에 관하여(배열로 작동하는 문자열), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/issaclewkowicz/strings-acting-as-arrays-27c1텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)