function getLongestWord(str) { // 'i need a break'
1. 문자열끼리의 길이 비교를 위해 split을 사용하여 문자열을 배열로 만들어준다.
let arr = str.split(' '); // ['i', 'need', 'a', 'break']
2. 배열의 처음인 0번째 요소가 가장 긴 문자열이라고 가정한다.
let longest = arr[0];
3. 반복문을 사용하여 배열의 마지막 요소까지 반복 사이클을 돌려준다.
4. 만약 요소의 길이가 지정해둔 longest의 길이보다 길 경우, 해당 요소가 longest가 된다.
for (let i = 0; i < arr.length; i++) {
if (arr[i].length > longest.length) {
longest = arr[i];
}
}
return longest;
}
0-9 사이의 정수를 요소로 갖는 배열을 입력받아 전화번호 형식의 문자열을 리턴해야 한다.
[0, 1, 0]이 있다고 가정string 타입을 리턴function createPhoneNumber(arr) {
1. 먼저 연락처 앞자리(010)와 뒷자리(1234-5678)를 구분하여 변수를 지정해줬다.
let front = '';
let back = '';
2. 배열의 길이에 따라 앞자리와 뒷자리에 올 배열을 slice로 잘라준다.
3. string으로 리턴해야 하기 때문에 잘라준 배열에 join을 사용하여 문자열로 만들어준다.
if (arr.length === 8) {
front = front + '(010)';
back = back + `${arr.slice(0, 4).join('')}-${arr.slice(4).join('')}`;
} else if (arr.length === 11) {
front = front + `(${arr.slice(0, 3).join('')})`;
back = back + `${arr.slice(3, 7).join('')}-${arr.slice(7).join('')}`;
}
return front + back;
}
4. 마지막에 front(앞자리)와 back(뒷자리)를 더해주는 값을 리턴시켜준다.
수(num)를 입력받아 num번째까지 총 num + 1개의 피보나치 수열을 리턴해야 한다.
0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1입니다.
그 다음 2번째 피보나치 수부터는 바로 직전의 두 피보나치 수의 합으로 정의합니다.
0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, ...
for)문을 사용function fibonacci(num) {
1. 변수를 선언 후 피보나치 수열을 담아줄 빈 배열을 할당해준다.
let arr = [];
2. 0부터 num까지 돌아가는 반복문을 만들어준다.
for (let i = 0; i <= num; i++) {
3. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이기 때문에
i가 0이나 1일 경우에는 해당 숫자가 리턴되도록 조건문을 따로 작성해준다.
if (i === 0) {
arr.push(0);
} else if (i === 1) {
arr.push(1);
4. 피보나치 수는 해당 수 직전의 두 수의 합이기 때문에,
(해당 수 - 1)와 (해당 수 - 2)를 하였을 때 나오는 값들을 더해준다.
} else {
arr.push(arr[i - 2] + arr[i - 1]);
}
}
return arr;
}