JavaScript에서 문자열을 분할(split)하는 방법은 크게 3가지가 있습니다. 가장 전통적인 방식은 string.split() 메서드를 사용하는 것이며, 이후 등장한 ES6에서는 스프레드 연산자(spread operator)와 Array.from() 메서드라는 두 가지 새로운 방법이 추가되었습니다. 지금부터 세 가지 방법을 하나씩 자세히 살펴보겠습니다.
1. String.split()
문법
string.split();
예제
다음 예제에서는 string.split() 메서드를 사용하여 주어진 문자열을 개별 문자 단위로 분할합니다. 구분자로 빈 문자열('')을 전달하면 문자열의 모든 글자가 배열 요소로 하나씩 나뉘어 반환됩니다.
<html>
<body>
<script>
const str = 'Tutorialspoint';
var d = str.split('');
document.write(d);
</script>
</body>
</html>
출력 결과
T,u,t,o,r,i,a,l,s,p,o,i,n,t
2. 스프레드 연산자(Spread Operator)
문법
[...string];
예제
다음 예제에서는 ES6 스프레드 연산자를 사용하여 주어진 문자열을 개별 문자로 분할합니다. 별도의 메서드를 호출하지 않고 대괄호 안에 ...만 붙이면 되기 때문에 string.split() 방식보다 훨씬 간결하고 직관적이라는 장점이 있습니다.
<html>
<body>
<script>
const str = 'Tutorix';
var d = [...str];
document.write(d);
</script>
</body>
</html>
출력 결과
T,u,t,o,r,i,x
3. Array.from()
문법
Array.from(str);
예제
다음 예제에서는 ES6의 Array.from() 메서드를 사용하여 주어진 문자열을 개별 문자로 분할합니다. 이 메서드는 원래 유사 배열 객체나 반복 가능한(iterable) 객체를 배열로 변환하는 기능을 하며, 문자열에 적용하면 split('')과 동일한 결과를 얻을 수 있습니다.
<html>
<body>
<script>
const str = 'Tutorix and Tutorialspoint';
var d = Array.from(str);
document.write(d);
</script>
</body>
</html>
출력 결과
T,u,t,o,r,i,x, ,a,n,d, ,T,u,t,o,r,i,a,l,s,p,o,i,n,t
정리하면, 호환성이 중요하다면 string.split(), 코드의 간결함이 중요하다면 스프레드 연산자나 Array.from()을 선택하는 것이 좋습니다. 상황에 맞는 방법을 활용해 보세요.