JavaScript

[Javascript] 문자열을 배열로 변환, 배열 뒤집기, 배열 합치기, 전개 연산자 / string.split(""), spread 연산자(...), from(), array.reverse(), array.join("")

hellosonic 2023. 8. 2. 18:05

string.split() : 문자열을 특정 문자를 기준으로 나눈 후 배열로 변환한다.

var string = "ABCDE";
var arr = string.split("");
console.log(arr); // ["A", "B", "C", "D", "E"];

spread 연산자인 ...을 사용하여 문자열을 문자로 구성된 배열로 변환한다.

var string = "ABCDE";
var arr = [...string];

console.log(arr); // ["A", "B", "C", "D", "E"]

Array 클래스의 from() 메서드 활용

var string = "ABCDE";
var arr = Array.from(string);

console.log(arr); // ['A', 'B', 'C', 'D', 'E']

cf) 문자열 "1234"의 각 자리의 숫자를 더하는 방법

var string = '1234';
var arr = string.split("").map(Number); //각 자리를 배열로 변환하고 숫자로 바꾼다.
var answer = arr.reduce(function add(sum, currValue){
    return sum + currValue;
}, 0);

array.reverse() : 배열 뒤집기 (원본 자체가 변경이 된다. sort() 함수처럼.)

var arr = ['a','b','c','d'];

var reverseArr = arr.reverse();
console.log(reverseArr); // d c b a
console.log(arr); // d c b a

 

cf) 전개 연산자를 활용하여 원본 배열을 유지한 채 뒤집기

var arr = ['a','b','c','d'];

var reverseArr = [...arr].reverse();
console.log(reverseArr); // d c b a
console.log(arr); // a b c d

전개 연산자 ([...array], {...object})

  • 전개 연산자는 배열의 요소나 객체를 나열해주는 연산자이다.
  • 배열이나 객체의 복사본(원본에 영향을 미치지 않는)을 만들 수 있으며,
  • 여러 개의 배열이나 객체를 손쉽게 병합할 수 있다.
var arr = [1,2,3,4,5,6];
var copyArr = [...arr];

console.log(arr, copyArr); //[1,2,3,4,5,6] [1,2,3,4,5,6]
console.log(arr === copyArr); //false (복사는 되지만 서로 같지 않다)

 

전개 연산자를 통한 배열 병합 : [...arr1, ...arr2] / arr1.push(...arr2)

var arr1 = [1,2,3,4,5];
var arr2 = [6,7,8,9,10];

var mergeArr = [...arr1, ...arr2];
console.log(mergeArr); //[1,2,3,4,5,6,7,8,9,10]

arr1.push(...arr2);
console.log(arr1); // [1,2,3,4,5,6,7,8,9,10]

배열 뒤집기 : array.reverse()

var arr = [1,2,3,4,5];
arr.reverse();

console.log(arr); // [5,4,3,2,1]

배열 합치기 : array.join([separator])

var arr = ['son', 'kane', 'duo'];

var j1 = arr.join("");
var j2 = arr.join("-");

console.log(j1); //sonkaneduo
console.log(j2); //son-kane-duo