ホームページ >ウェブフロントエンド >jsチュートリアル >JS を使用して Number 型配列の最大要素を見つける方法
今回は、JS を使用して Number 型配列の最大要素を見つける方法と、JS を使用して Number 型配列の最大要素を見つけるときの注意点を説明します。以下は実践的なケースです。見てみましょう。
以下に4つの方法を紹介します。
1. ライブラリ関数を使用しない場合
コードは次のとおりです:
function findMax1 (arr) { let result = 0; if (Array.isArray(arr)) { for (let i = 0; i < arr.length; i++) { result = arr[i] > result ? arr[i] : result; } return result; } else { console.error('The parameter arr is not an array'); return; } }
説明:
変数結果を使用して最大値を格納します。検索対象の配列を走査します。現在走査している要素が result よりも大きい場合、この要素を result に割り当てます。
2. Array.reduce() を使用します
コードは次のとおりです:
function findMax2 (arr) { let result = 0; if (Array.isArray(arr)) { result = arr.reduce((a, b) => { return a > b ? a : b; }, 0); return result; } else { console.error('The parameter arr is not an array'); return; } }
説明:
reduce メソッドは、配列をアキュムレーターに縮小し、配列内の各要素を に縮小します。価値。
reduce は 2 つのパラメータを受け入れます:
最初のパラメータは callback で、これは前述の関数です。これには 4 つのパラメーターがあります:
accumulator: アキュムレーター。最後のコールバック実行の結果です。初期値が指定されている場合、最初は初期値です。
currentValue: 現在探索されている配列の要素。
currentIndex: 現在探索されている配列の要素のインデックス (0 から始まります)。 InitialValue が指定されている場合は 1 から始まります。
array: 現在 Reduce が適用されている配列。
2 つ目は、initialValue です。これは初期値であり、コールバック関数の最初の実行の最初の実パラメータとして使用されます。これはオプションです。このパラメータが指定されておらず、空の配列に適用された場合、エラーが報告されることに注意してください。
すると、上記のコードの意味は、比較のために配列を走査するたびに、大きい方、つまりアキュムレータが残り、配列要素との次の比較に使用されるということです。最終的にはこの値だけが残り、これが最大値になります。
3. apply と Math.max() の使用
コードは次のとおりです:
function findMax3 (arr) { let result = 0; if (Array.isArray(arr)) { result = Math.max.apply(null, arr); return result; } else { console.error('The parameter arr is not an array'); return; } }
説明:
apply の説明は少し複雑なので、これ以上の説明は行いません。
これは 2 つのパラメーターを受け入れます。1 つ目は thisArg で、2 つ目は argsArray です。どちらもオプションです。簡単に言うと、関数を使用する場合、パラメータは配列として渡されます。
4. Math.max() を使用するだけです
コードは次のとおりです:
function findMax4 (arr) { let result = 0; if (Array.isArray(arr)) { result = Math.max(...arr); return result; } else { console.error('The parameter arr is not an array'); return; } }
説明:
前のソリューションのアイデアに基づいて、ES6 にはスプレッド演算子 (.. .) を変換できます。配列内の要素は、カンマ区切りのシーケンスに区切られます。 Math.max() 関数のニーズを満たしています。
JS
1の数値、数学、配列に関する知識を紹介したいと思います。
Number オブジェクトの作成方法:
方法 1:
var 変数 = new Number (数値)
方法 2:
var 変数 = 数値;
よく使用されるメソッド:
toString() 数値を変換するinto 基本形式の文字列を指定します。 (数値を入力して数値に変換すると、number.toString(2))
toFixed() は小数点以下の桁を保持することを指定しており、四捨五入機能も備えています。
2, Math Between (0 を含む、1 を除く)、四捨五入3, Array 配列
オブジェクト: 配列の作成メソッド 1: var 変数名 = new Array();配列。 方法 2: var 変数名 = new Array(length) は、指定された長さの配列オブジェクトを作成します。var 变量名 = new Array("元素1","元素2"...); 给数组指定元素创建数组 的对象。
方式4:
var 变量名 = ["元素1","元素2"...];
数组要注意的细节:
1. 在javascript中数组的长度是可以发生变化的。
var arr = new Array(); //创建了一个长度为0的数组对象。 arr[100] = 10; document.write("arr长度:"+arr.length+"<br/>"); var arr2 = new Array("狗娃","狗剩","铁蛋"); arr2 = ["狗娃","狗剩","铁蛋","张三"]; document.write("arr2长度:"+arr2.length+"<br/>");
3.1数字的方法
a、concat把arr1与arr2的数组元素组成一个新的数组返回。 arr1 = arr1.concat(arr2);
b、join使用指定的分隔符把数组中的元素拼装成一个字符串返回。
var elements = arr1.join(",");
c、pop :移除数组中的最后一个元素并返回该元素。
d、push:将新元素添加到一个数组中,并返回数组的新长度值。
arr1.push("你好");
e、reverse(); 翻转数组的元素
f、slice指定数组 的开始索引值与结束索引值截取数组的元素,并且返回子数组。(包头不包尾)
var subArr = arr1.slice(1,2);
g、sort排序,排序的时候一定要传入排序的方法。(不传时默认是按照ASCII表排列)
arr1 = [19,1,20,5]; arr1.sort(sortNumber); //排序,排序的时候一定要传入排序的方法。 function sortNumber(num1,num2){ return num1-num2; }
h、splice第一个参数是开始删除元素的 索引值, 第二参数是删除元素的个数,往后的数据就是插入的元素(也可以不写)。
arr1.splice(1,1,"张三","李四","王五");
相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!
推荐阅读:
以上がJS を使用して Number 型配列の最大要素を見つける方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。