어떤 배열의 시작부터 끝까지(마지막 인덱스 미포함) 새로운 배열 객체로 반환하는 메소드.
const myNumber = [7, 13, 15, 30, 45]; console.log(myNumber.slice(0, 2)) // [7, 13] <br> const animals = 'ant', 'bison', 'camel', 'duck', 'elephant']; console.log(animals.slice(2, 4)) // ["camel", "duck"] console.log(animals.slice(2) // ["camel", "duck", "elephant"]
배열의 모든 요소를 연결해 하나의 문자열로 만드는 메소드.
const myNumber = [7, 13, 15, 30, 45]; console.log(myNumber.join()) // "7,13,15,30,45" console.log(myNumber.join('')) // "713153045" console.log(myNumber.join('-')) // "7-13-15-30-45"
예시 문제
Q. 0-9 사이의 정수를 요소로 갖는 배열을 입력받아 전화번호 형식의 문자열을 리턴하시오.
인자: arr
ㆍnumber 타입을 요소로 갖는 배열
ㆍarr[i]는 0 이상 9 이하의 정수
ㆍ배열의 길이는 8 또는 11
ㆍ반복문 사용 금지
ㆍ배열의 길이가 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'
function createPhoneNumber(arr) { let start = '(010)'; // 앞번호 선언 및 할당 let middle = arr.slice(arr.length-8, arr.length-4).join('') // 중간번호 선언 및 할당 let tail = arr.slice(arr.length-4).join('') // 끝번호 선언 및 할당 <br> if(arr.length === 11) { // 배열의 길이가 11인 경우 start를 재할당 start = `(${arr.slice(0, 3).join('')})` } return `${start}${middle}-${tail}` }