정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요. 예를들어 arr이 [4,3,2,1]인 경우는 [4,3,2]를 리턴 하고, [10]면 [-1]을 리턴 합니다.
- arr은 길이 1 이상인 배열입니다.
- 인덱스 i, j에 대해 i ≠ j이면 arr[i] ≠ arr[j] 입니다
function solution(arr) {
let answer = [];
if (arr.length<=1) answer.push(-1); // 리턴하려는 배열이 빈 배열인 경우 -1리턴
arr.map((n, i) => { // (요소, 인덱스)
for(let j=0;j<arr.length;j++){ // array 길이만큼 반복해서 큰지 작은지 비교
if(n>arr[j]){ // 모든 배열 요소와 비교해서 '크다'가 한번이라도 true이면
answer.push(n); // 제일 작은 수가 아니므로 answer에 push
break; // 한번 true가 나온 수는 중복 push를 방지하기 위해 break
}
}
});
return answer;
}
function solution(arr) {
arr.splice(arr.indexOf(Math.min(...arr)),1);
if(arr.length<1)return[-1];
return arr;
}
splice() 메소드
array.splice(시작 인덱스, 제거할 요소의 수, 추가할 요소, ...);
splice() 메서드는 배열의 기존 요소를 삭제 또는 교체하거나 새 요소를 추가하여 배열의 내용을 변경합니다.
❗ splice() 메소드는 제거된 요소
를 리턴한다. 추가할 요소는 선택사항이다.
Math.min()
Math.min(value1, value2, ...);
Math.min() 함수는 주어진 숫자들 중 가장 작은 값을 반환합니다.
...
spread 연산자는 배열, 문자열, 객체 등 반복 가능한 객체 (Iterable Object)를 개별 요소로 분리해준다.
const arr = [1, 2, 3, 4, 5];
console.log(arr); // [1, 2, 3, 4, 5]
console.log(...arr); // 1, 2, 3, 4, 5