かつみ
【3章】JavaScript基礎+演習の振り返り
2026年05月01日
要約を生成中...
JavaScriptの基礎は問題なく完了できましたが、
JS省略記法は全く意識していなかったので効率化を意識して積極的に使っていきます!!
一行で値を返している関数はreturn 省略可
引数が一つの関数の括弧は省略可
配列の最大値の取得と配列の重複の処理は初めて書いたので理解を深めるために下記にてまとめました。
(認識違いがあればご指摘ください。。)
今までこうしたアウトプットをしてこなかったので大事にしていきたいと思います!!
Math.max
引数の中で最大値を返す
配列はそのまま引数に渡せない
スプレッド構文で展開して渡す
Math.max.apply では配列がそのまま第二引数に渡せる(ES6以降では上記のスプレッド構文で渡す方が一般的)
apply メソッドの第一引数ではthis の参照先を指定することができるが、Math.max ではthisは使用しないため、nullを渡す
配列が大きいと引数展開数の上限に引っかかることがある
RangeError: Maximum call stack size exceededのエラーとなる場合がある
多次元配列には使えない
reduce
配列を1要素ずつ処理するため、大量データでも比較的扱いやすい
最大値だけでなく最大値に関連するデータの取得がしやすくなる
Set オブジェクト
配列の要素がプリミティブ型であれば重複を自動的に削除してくれるし、パフォーマンスもよい
ただしオブジェクトは参照値で比較されるため、オブジェクト配列の重複削除には向いていない
filterメソッドとindexOfを組み合わせる
indexOfで要素が最初に登場した位置を取得し、対象の配列のインデックス番号と比較して===になるものだけをfilterメソッドで残す
要素数が多いと処理速度が低下するため、大規模なデータには適していない
reduceメソッド
配列の要素を走査して、コールバック関数の第一引数の配列に初めて出てきた要素だけを追加していくことで重複を取り除く
includesメソッドと合わせて使用すると毎回配列内で検索を行うため、要素数が増えるとパフォーマンスが低下する
参考: https://www.yminamiyama.com/articles/javascript-array-remove-duplicates-methods
コメント
まだコメントはありません。