difference関数の課題内容
_. difference関数を自分で実装する課題。
https://lodash.com/docs/4.17.15#difference
「課題内容」/「解説動画」/「解答例」を確認したい場合は、以下リンク先のページを参照。
https://js-drills.com/blog/difference/
課題に取り組む前の状態
- 解答例を見なくてもできそうと思った。
課題に取り組んだ後の状態
- 解答例では引数が配列でない場合の処理を実装しているので、その点も考慮できるようにしたい。
difference関数の実装コード(答えを見る前)
function difference(array, values) {
const diffArray = [];
if (!Array.isArray(values)) {
return [...array];
}
for (let i = 0; i < array.length; i++) {
if (!values.includes(array[i])) {
diffArray.push(array[i]);
}
}
return diffArray;
}
console.log(difference([2, 1], [2, 3]));
// => [1]
difference関数の実装コード(答えを見た後)
function difference(array, values) {
const diffArray = [];
if (!Array.isArray(values)) {
return [...array];
}
for (let i = 0; i < array.length; i++) {
if (!values.includes(array[i])) {
diffArray.push(array[i]);
}
}
return diffArray;
}