2017-07-03 20 views
-2

findMaxという名前の関数を作成します。 は数値の配列を表す1つのパラメータ(数値と呼ばれます)を受け入れます。 関数内で、配列内の最大数を探します。 結果を返します。配列を正しく返すことができません

// Hint: You need to make sure that max always returns an 
// element of an array and not an arbitrary number. 

code

私は取得していますエラーメッセージが返さ

である '4'。そうではありません。最大値は5です。

+1

郵便コードを動作するはずです...ではない画像がMAXNUMBERを返す – epascarello

+1

? –

答えて

0

あなたのスクリーンショットに投稿されたコードは、問題の仕様と矛盾しているようです。仕様では要素を返すように求められていますが、実装によってインデックスが返されます。 、あなたは上記の機能を再利用することができます

function findMax(numbers){ 
    return numbers.reduce((max, n)=> n > max ? n : max); 
} 

はあなたが最大の要素のインデックスを探しているなら:あなたは確かに最大の要素を検索したい場合は、そのための楽しいワンライナーがあります

function findMaxIndex(numbers){ 
    return numbers.indexOf(findMax(numbers)); 
} 

demo

0

それを行うための簡単な方法は、以下のように、ループためは、大きな数を見つけるたびにMAXNUMBERを変え続けることです。

num = [5, 3, 2, 7, 9, 10, 200]; 
findMax(num); 

function findMax(numbers) { 
    maxNumber = number[0]; 
    for (i = 0; i < numbers.length; i++) { 
    if (numbers[i] > maxNumber) { 
     maxNumber = numbers[i] 
    } 
    } 
    return maxNumber; 
} 

これはを返し、問題のかなり良い:)

関連する問題