[javascript] 배열 join() 사용하기

2023. 2. 28. 00:20· HTML-CSS-JavaScript/JavaScript
목차
  1. 반환값으로는 배열의 모든 요소들을 연결한 하나의 문자열을 반환합니다. 만약 arr.length 가 0이라면, 빈 문자열을 반환합니다.
  2. 문제
  3. 입력
  4. 인자 1 : arr
  5. 출력
  6. 주의 사항
  7. 입출력 예시
  8. 풀이

join()이란?

배열의 모든 요소를 연결해 하나의 문자열로 만드는 것 

    arr.join([separator])

매개변수로 separator는 배열의 각 요소를 구분할 문자열을 지정할 수 있습니다. separator는 생략할 수 있고 생략하게 된다면 배열의 요소들이 쉼표로 구분됩니다. separator가 빈 문자열이면 모든 요소들 사이에 아무 문자도 없이 연결됩니다. 

반환값으로는 배열의 모든 요소들을 연결한 하나의 문자열을 반환합니다. 만약 arr.length 가 0이라면, 빈 문자열을 반환합니다.

 

그럼 예시를 보면서 join의 사용법에 대해 익혀봅시다 ! 

 

var a = ['바람', '비', '불'];
var myVar1 = a.join();      // myVar1에 '바람,비,불'을 대입
var myVar2 = a.join(', ');  // myVar2에 '바람, 비, 불'을 대입
var myVar3 = a.join(' + '); // myVar3에 '바람 + 비 + 불'을 대입
var myVar4 = a.join('');    // myVar4에 '바람비불'을 대입

위의 예시 처럼 구분자에 아무것도 사용하지 않으면 자동적으로 , 로 구분해주고 빈 문자열을 사용한다면 요소들을 다 연결하여 반환해줍니다. 

 

그러면 join()을 활용한 문제를 하나 풀어봅시다! 

createPhoneNumber

문제

0-9 사이의 정수를 요소로 갖는 배열을 입력받아 전화번호 형식의 문자열을 리턴해야 합니다.

입력

인자 1 : arr

  • number 타입을 요소로 갖는 배열
  • arr[i]는 0 이상 9 이하의 정수
  • 배열의 길이는 8 또는 11

출력

  • string 타입을 리턴해야 합니다.

주의 사항

  • 반복문(for, while) 사용은 금지됩니다.
  • 배열의 길이가 8인 경우, 앞에 [0, 1, 0]이 있다고 가정합니다.

입출력 예시

let output = createPhoneNumber([0, 1, 0, 1, 2, 3, 4, 5, 6, 7, 8]);
console.log(output); // --> '(010)1234-5678'

output = createPhoneNumber([8, 7, 6, 5, 4, 3, 2, 1]);
console.log(output); // --> '(010)8765-4321'

output = createPhoneNumber([0, 1, 1, 4, 3, 2, 1, 8, 7, 6, 5]);
console.log(output); // --> '(011)4321-8765'

 

풀이

function createPhoneNumber(arr) {
  let head = '(010)';
  const len = arr.length;
  const body = arr.slice(len - 8, len - 4).join('');
  const tail = arr.slice(len - 4, len).join('');

  if (len === 11) {
    head = `(${arr.slice(0, 3).join('')})`;
  }

  return `${head}${body}-${tail}`;
}

slice를 통해 4자리 마다 빈 문자열을 구분자로 사용하여 연결해주어 변수에 넣어주었습니다 ! 

 

오늘은 배열의 속성중 join에 대해 알아보았습니다. join은 많이 쓰이니 알아두는 것이 좋겠습니다 ! 

 

오늘도 열공 ! 

'HTML-CSS-JavaScript > JavaScript' 카테고리의 다른 글

[javascript] Scope에 대해  (2) 2023.03.02
[javascript] 원시 자료형과 참조 자료형 , 얕은 복사와 깊은 복사  (0) 2023.03.02
[javascript] 배열 slice() 사용하기  (0) 2023.02.27
[javascript] for of 문이란 ?  (0) 2023.02.27
[javascript] 자바스크립트 타입 찾기  (0) 2023.02.27
  1. 반환값으로는 배열의 모든 요소들을 연결한 하나의 문자열을 반환합니다. 만약 arr.length 가 0이라면, 빈 문자열을 반환합니다.
  2. 문제
  3. 입력
  4. 인자 1 : arr
  5. 출력
  6. 주의 사항
  7. 입출력 예시
  8. 풀이
'HTML-CSS-JavaScript/JavaScript' 카테고리의 다른 글
  • [javascript] Scope에 대해
  • [javascript] 원시 자료형과 참조 자료형 , 얕은 복사와 깊은 복사
  • [javascript] 배열 slice() 사용하기
  • [javascript] for of 문이란 ?
배트리버
배트리버
🐾 사람 좋아, 개발 좋아 🐾 궁금한 건 끝까지 파고들고, 배운 건 즐겁게 나누는 개발자의 놀이터
배트리버
리트리버의 개발 놀이터
배트리버
전체
오늘
어제
  • 분류 전체보기
    • 네트워크
    • 기초 셋팅
    • 오늘의 일기
    • 리액트
    • 코테 준비
      • 프로그래머스
      • 백준
    • 코드스테이츠44기 프론트엔드
    • HTML-CSS-JavaScript
      • HTML
      • CSS
      • JavaScript
    • 자료구조&알고리즘
    • TypeScript
    • Git
    • Tip
    • 프로젝트
    • Next.js
    • 트러블슈팅

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • KPT 회고
  • 코드스테이츠 프론트엔드
  • 코드스테이츠 44기
  • 코드스테이츠 블로깅
  • 자바스크립트 비동기
  • 코드스테이츠
  • 오블완
  • 리액트쿼리
  • 티스토리챌린지
  • 프로젝트 회고
  • 리액트 상태관리
  • 타입스크립트문법
  • 코드스테이츠 회고록
  • 리액트
  • BFS
  • 프로그래머스
  • 탄스택쿼리
  • 자바스크립트
  • 코드스테이츠 44기 프론트엔드
  • 네트워크

최근 댓글

최근 글

hELLO · Designed By 정상우.v4.2.2
배트리버
[javascript] 배열 join() 사용하기
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.