2017-02-28 12 views
-6

値の整列方法を変更せずに配列から最小値を取得しようとしています。配列の最小値を取得

function removeSmallest(numbers){ 
var min=Math.min.apply(null,numbers); 
var indexvalue=numbers.indexOf(min); 
delete numbers[indexvalue]; 
return numbers; 
} 
+4

ようこそスタックオーバーフロー! [ツアー]を見て回り、[ヘルプ]、特に[*どのように良い質問をしますか?*](/ help/how-to-ask) –

+0

*デバッグヘルプを求める質問(「なぜこのコードは動作しないのですか?」)には、目的の動作、特定の問題またはエラー、および質問自体の中でそれを再現するのに必要な最短コードが含まれていなければなりません。明確な問題文がない質問は、他の読者にとって役に立ちません。 – BSMP

答えて

1

2つの問題:

  1. Math.min.apply(null, numbers)Math.min.apply(Math, numbers)でなければなりません(代わりにnullMathに注意してください)

  2. 通常、deletethis question's answers for detailsを参照してください(アレイ用の適切なツールではありません。spliceへの使用配列を変更する場合は、配列エントリを削除してください:

    numbers.splice(indexvalue, 1); 
    

また、作成して返す新しい配列を代わりにあなたが受け取った同じ配列を変異して返す考えるかもしれません。

関連する問題