Description
const originalArray = List([ 'a', '2', '3' ])
remove(originalArray, 1)
// ['a', '3']
works as expected : https://immutable-js.com/play/#Y29uc3Qgb3JpZ2luYWxBcnJheSA9IExpc3QoWyAnYScsICcyJywgJzMnIF0pCnJlbW92ZShvcmlnaW5hbEFycmF5LCAxKQ==
If we have a plain array, then the output is a weird concatenation of the rest of the array as string : https://immutable-js.com/play/#Y29uc3Qgb3JpZ2luYWxBcnJheSA9IFsgJ2EnLCAnMicsICdiJywgJzQnIF0KcmVtb3ZlKG9yaWdpbmFsQXJyYXksIDEp
If the array is full of numbers, then it does work fine : https://immutable-js.com/play/#Y29uc3Qgb3JpZ2luYWxBcnJheSA9IFsgMSwgMiwgMywgNCBdCnJlbW92ZShvcmlnaW5hbEFycmF5LCAxKQ==
The weirdest case is is the first string contains a number in a string, then the remove function does crash ! https://immutable-js.com/play/#Y29uc3Qgb3JpZ2luYWxBcnJheSA9IFsgJzEnLCAnYScsICdiJywgJ2MnIF0KcmVtb3ZlKG9yaWdpbmFsQXJyYXksIDEp
Set
The same applies for "set": https://immutable-js.com/play/#Y29uc3Qgb3JpZ2luYWxBcnJheSA9IFsgJ2RvZycsICdmcm9nJywgJ2NhdCcsICdmb29kJyBdCnNldChvcmlnaW5hbEFycmF5LCAxLCAnY293JykgLy8gWyAnZG9nJywgJ2NvdycsICdjYXQnLCAnZm9vZCcgXQ==