코플릿 기록/JavaScript

배열 24번 ★★★

뭉지야 2023. 1. 7. 20:02
728x90

#문제

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

배열의 길이는 8또는 11

string타입을 리턴

배열의 길이가 8인경우 앞에 010이 있다고 가정한다.

 

#예시

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'

#풀이

전화번호형식의 문자열을 리턴.

arr.slice.join : 배열요소를 문자열로 병합.

(0~2자리) 3~6자리 7~11자리

 

#정답

function createPhoneNumber(arr) {

let first = arr.slice(0,3).join(' ');        //'010'
let second = arr.slice(-8, -4).join(' ');    //'1234'
let third = arr.slice(-4).join(' ');        //'5678'

if (arr.length === 8) {
first = '010'; }
return `(${first})${second}-${third}`;}
728x90