배열 arr에서 가장 작은 수를 제거한 배열을 리턴
빈 배열인 경우 -1을 채워 리턴
arr의 길이는 1이상
배열의 값들은 같지 않다
arr | return |
---|---|
[4,3,2,1] | [4,3,2] |
[10] | [-1] |
function solution(arr){
arr.length === 1 ?
arr[0] = -1 : arr.splice(arr.indexOf( Math.min.apply(null, arr) ), 1);
return arr;
}
🤍 slice(시작 index[, 마지막 index])
배열의 내용을 변경하여 새로운 배열 반환
원본 배열 바뀌지 않음
const animals = ['dog', 'duck', 'cat', 'rabbit'];
animals.slice(2); // ['cat', 'rabbit']
console.log(animals); // ['dog', 'duck', 'cat', 'rabbit']
🤍 Math.min()
숫자들 중 가장 작은 값을 반환
값으로 숫자만 들어갈 수 있기 때문에 배열 사용시 apply 사용
Math.min(1,2,3,4,5); // 1
Math.min([1,2,3,4,5]); // NaN
🤍 apply()
apply(this, [배열])
this 값과 배열로 제공되는 인자를 함수로 호출
Math.min 메소드에서는 this 역할이 없기 때문에 null
Math.min.apply(null, arr); // 1