JavaScript 配列で最大/最小値を求める
このチュートリアルでは、JavaScript の Math.min()
および Math.max()
関数を使用して配列の最小値と最大値を求める方法について説明します。
JavaScript の Math.min()
関数を使用して配列の最小値を求める
特定の配列に存在する最小値を求めるには、JavaScript の Math.min()
関数を使用できます。この関数は、指定された配列に存在する最小値を返します。たとえば、いくつかのランダムな値を使用して配列を定義し、Math.min()
関数を使用してその最小値を見つけ、console.log()
関数を使用してコンソールに表示してみましょう。以下のコードを参照してください。
var myArray = [1, 5, 6, 2, 3];
var m = Math.min(...myArray);
console.log(m)
出力:
1
出力からわかるように、配列の最小値は Math.min()
関数によって返されます。一部のブラウザは上記のメソッドをサポートしていない可能性があるため、apply()
関数を Math.min()
関数と一緒に使用して、特定の配列から最小値を取得できます。たとえば、以下のコードを参照してください。
var myArray = [1, 5, 6, 2, 3];
var m = Math.min.apply(null, myArray);
console.log(m)
出力:
1
apply()
関数は、上記のコードで指定された this
値と指定された配列を使用して関数を呼び出します。事前定義された関数を使用したくない場合は、JavaScript のループを使用して独自の関数を作成できます。たとえば、配列の最小値を求める関数を作成しましょう。以下のコードを参照してください。
function MyMin(myarr) {
var al = myarr.length;
minimum = myarr[al - 1];
while (al--) {
if (myarr[al] < minimum) {
minimum = myarr[al]
}
}
return minimum;
};
var myArray = [1, 5, 6, 2, 3];
var m = MyMin(myArray);
console.log(m)
出力:
1
上記のコードでは、指定された配列の最後の要素を変数 minimum
に保存し、それを前の要素と比較しました。要素が変数 minimum
より小さい場合、この要素を変数 minimum
に格納します。そうでない場合は、次の要素に移動します。インデックス 0 に到達するまでこの手順を繰り返します。ループの後、変数 minimum
を返します。
JavaScript の Math.max()
関数を使用して配列の最大値を求める
特定の配列に存在する最大値を求めるには、JavaScript の Math.max()
関数を使用できます。この関数は、指定された配列に存在する最大値を返します。以下のコードを参照してください。
var myArray = [1, 5, 6, 2, 3];
var m = Math.max(...myArray);
console.log(m)
出力:
6
apply()
関数を Math.max()
関数と一緒に使用して、特定の配列から最大値を取得することもできます。たとえば、以下のコードを参照してください。
var myArray = [1, 5, 6, 2, 3];
var m = Math.max.apply(null, myArray);
console.log(m)
出力:
6
配列の最大値を求める関数を作成しましょう。以下のコードを参照してください。
function MyMax(myarr) {
var al = myarr.length;
maximum = myarr[al - 1];
while (al--) {
if (myarr[al] > maximum) {
maximum = myarr[al]
}
}
return maximum;
};
var myArray = [1, 5, 6, 2, 3];
var m = MyMax(myArray);
console.log(m)
出力:
6