`Array.prototype.filter` seems more versatile (although it doesn't mutate
the original array) since it removes elements based on a function:

```js
[1, 2, 3, 2, 1].filter(n => n !== 1); // [2, 3, 2]
```

Since the method is named `toggle`, what happens when you call it on the
same array twice? Do you get the removed elements back?

```js
const arr = [1, 2, 3, 2, 1].toggle(1) // mutates the original array
removing 1, resulting in [2, 3, 2]
arr.toggle(1); // ???
```

On Fri, Feb 7, 2020 at 3:49 AM manuelbarzi <[email protected]> wrote:

> just a proposal to provide this functionality into array, allowing to add
> / remove items in a toggling mechanism shortcut, avoiding the need to do
> traversing to locate the indexes and remove them next (i.e. by means of a
> polyfill or any other approach).
>
> ```js
> [1, 2, 3, 2, 1].toggle(1) // mutates the original array removing 1,
> resulting in [2, 3, 2]
> ```
> _______________________________________________
> es-discuss mailing list
> [email protected]
> https://mail.mozilla.org/listinfo/es-discuss
>
_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss

Reply via email to