remove関数の課題内容
_.remove関数を自分で実装する課題。
https://lodash.com/docs/4.17.15#remove
「課題内容」/「解説動画」/「解答例」を確認したい場合は、以下リンク先のページを参照。
https://js-drills.com/blog/remove/
課題に取り組む前の状態
- 解答を見なくても実装できそうだと思った。
課題に取り組んだ後の状態
- 解答例と異なる部分はあるが、実行結果はサンプルと同じになった。
remove関数の実装コード(答えを見る前)
function remove(array, predicate) {
const removedArray = [];
for (let i = 0; i < array.length; i++) {
if (predicate(array[i])) {
removedArray.push(...array.splice(i, 1));
}
}
return removedArray;
}
var array = [1, 2, 3, 4];
var evens = remove(array, function (n) {
return n % 2 == 0;
});
console.log(array);
// => [1, 3]
console.log(evens);
// => [2, 4]
## remove関数の実装コード(答えを見た後)
// 同じ