[x] sampleArr: generate a random array of specified length
[x] shuffleArr: shuffle an array
[x] insert: insert an element after a specified index
(if the index is negative, it will insert from the end)
(recursive => it will insert the element on every index like)
//insert arr = [1,2,3,4,5], element = 0, index = 2
//output => [1,2,0,3,4,0,5]
//insert arr = [1,2,3,4,5, 6], element = 0, index = 2
//output => [1,2,0,3,4,0,5,6,0]
//when index is negative, it will start inserting from the end
[x] remove: remove an element at a specified index (if the index is negative, it will remove from the end) index can be array of indexes
[x] unique: remove duplicates from an array
[x] rotate: rotate an array by a specified number of steps ie ([1,2,3,4,5], 2) => [3,4,5,1,2]
[x] partition: partition an array into two arrays based on a condition
[ ] #50
[ ] interDiff: combination of intersection and difference
For Objects
[x] sampleObj: generate a random object with specified keys and values
[ ] #56
[x] omit: omit specified keys from an object
[x] pick: pick specified keys from an object and return a new object
[x] rename: rename a key in an object
[ ] sortKeys: sort the keys of an object
Functional
[ ] #62
[ ] #61
[ ] #60
[x] #59
[x] #58
[x] once: return a function that can only be called once
[x] after: return a function that can only be called after being called n times
[x] before: return a function that can only be called before being called n times
[x] times: call a function n times and return array of results
[x] #63
[x] sleep: sleep for a specified amount of time
[x] retry: retry a function n times
[x] timeout: timeout a function after a specified amount of time ie timeout(f, 1000)(args) which will call f(args) and if it takes more than 1 second, it will return a timeout error
Here are some ideas if you are searching for.
For Arrays
For Objects
Functional
Date..