Array.prototype.reverse() 는 배열의 순서를 반대로 리턴하는 메소드입니다.
예시를 사용해서 어떤 식으로 사용가능 한 지에 대해 이해해보고 활용해보도록 하겠습니다 !🏋🏼♀️
reverse() 는 오직 배열만을 뒤집은 반대 순서대로 정렬하여 재배열하는 메소드입니다.
그렇기 때문에 위와 같은 arr 배열을 reverse() 한다면 ,
바로 위와 같은 결과를 리턴합니다.
-> 배열의 순서를 반대로 재정렬하고 싶을 때 사용합니다.
arr 자체에 reverse()를 사용하면 반대로 재정렬 된 arr를 리턴합니다.
arr 자체의 값을 바꾸지 않을 것이라면 반대로 재정렬 된 arr의 값을 받을 다른 변수를 생성해주는 것이 좋습니다.
ex) let arrReverse = arr.reverse() ;
정수인 수를 반대 순서대로 리턴해라.
ex) -1345 -------> -5431 or 47362 ---------> 26374
위와 같은 문제가 주어졌을 때 , 어떤 식으로 해결할 것인가 ?
딱 봤을 때 저도 굉장히 간단한 문제라고 생각해서 수를 반대로 바꾸는 메소드만 생각해내면 된다고 생각했는데요 !
⛳️생각해내야 할 것.
1. 반대로 뒤집는 메소드 reverse() 는 array에만 적용할 수 있다.
2. 주어진 정수는 Number , 이것을 어떻게 array로 변형하여 뒤집을 것인지.
3. 만일 -가 들어갔을 때 , 어떻게 - 를 제외한 나머지만 반대로 뒤집고 다시 -를 제자리에 붙일 것인지.
⚾️사용한 메소드
- toString()
- reverse()
- split()
- join()
위에서 reverse() 는 설명이 되었던 것 같고, split에 대해서 설명해드리겠습니다.
split()은 되게 자주 쓰이는 메소드로 알고리즘 문제를 풀 때도 많이 사용되는 것 같습니다.
toString() 은 Number을 String 문자열로 변형해주는 메소드입니다.
split() 은 지정한 특정 문자열을 기준으로 문자열을 분할하여 배열로 넘겨주는 메소드입니다.
문자열 ➡️ 배열
위와 같이 str 이라는 변수의 값에서 기준이 되는 문자열을 '-'로 정하여 기준에 의해 분할 되게 합니다.
(기준이 되는 문자열이 "" 이와 같이 없을 때는 한 문자열씩 배열로 만들어집니다.)
이것의 결과로는,
이렇게 나오게 되는데 reverse() 메소드와는 다르게 메소드를 적용한 str 자체가 재정렬되는 것이 아니기 때문에 새로운 변수를 지정해서
배열 값을 그 변수에 지정해주는 것이 좋습니다.
왼쪽의 결과는 오른쪽 입니다.
join() 은 배열의 모든 요소를 연결해 하나의 문자열로 만듭니다.
만일 위의 코드처럼 join() 괄호 안에 아무런 문자열로 정해주지 않았을 때는 ,
(콤마) 를 문자열사이사이에 넣어 배열하나하나를 구분하여 문자열로 만들어줍니다.
만일 "" 안에 아무것도 없는 것을 join() 괄호 안에 넣어준다면 ?!
모든 배열을 사이에 구분 없이 붙여서 하나의 문자열을 만들어줍니다.
또 다른 예시는 아래와 같습니다.
왼쪽의 결과는 오른쪽 과 같습니다.
지금까지 설명했던 메소드들을 이용해서
문제를 해결해봤습니다.
잘..한건진 모르겠어서 다르게 하는 방식에 대해서도 더 생각해보고 고심해보려합니다. 화..이팅 !
'javascript > Methods' 카테고리의 다른 글
TIL no.54 - array.reduce() : javascript array method (0) | 2021.01.09 |
---|---|
TIL no.32 array.some(), array.every() : javascript method (0) | 2020.11.01 |
TIL no.31 array.filter() 기능 : 쇼핑몰 카테고리 필터 기능 : 리액트 (0) | 2020.11.01 |
TIL no.25 - 특정 값을 가지고 있는지 알아내는 메소드 : hasOwnProperty(), in JavaScript (0) | 2020.10.18 |