はじめに
配列の要素の順番は関係なく、2つの配列のlengthが等しいかどうか、2つの配列が同じ要素を持っているかを判定します。
関数の定義と実行
以下の通り定義します。
const isSameArr = (arr1: number[], arr2: number[]) => { if (arr1.length !== arr2.length) return false; const arr2Clone = [...arr2]; for (let i = 0; i < arr1.length; i++) { const matchedIndex = arr2Clone.indexOf(arr1[i]); if (matchedIndex === -1) return false; arr2Clone.splice(matchedIndex, 1); } return true; }
以下の通り実行します。
const isSame = isSameArr([1, 2, 3], [3, 1, 2]);