returnyes-js-utils
v1.0.0
Published
handwrite js-utils
Readme
js-utils
prepare
npm run buildnodeJS
npm run startwebpack config
1. function
call(fn, obj, ...args)
apply(fn, obj, args)
bind(fn, obj, ...args)
throttle(callback, wait)
debounce(callback, delay)
2. array
map(arr, callback)
reduce(arr, callback, initValue)
filter(arr, callback)
find(arr, callback)
findIndex(arr, callback)
every(arr, callback)
some(arr, callback)
unique1(arr)/unique2(arr)/unique3(arr)
concat(arr, ...args)
slice(arr, [begin[, end)])
flatten1(arr)/flatten2(arr)
chunk1(arr, size)/chunk2(arr, size)
difference(arr1, arr2)
pull(arr, ...args)
pullAll(arr, values)
drop(arr, size)
dropRight(arr, size)
compact(arr)
3. object
newInstance(Fn, ...args)
myInstanceof(obj, Type)
mergeObject(...args)
clone1(target)/clone2(target)
deepClone1(target)/deepClone2(target)/deepClone3(target, map = new Map())/deepClone4(target, map = new Map())
4. string
reverseString(str)
isPalindrome(str)
truncate(str, len)
5. extends
6. event-bind
- addEventListener(el, type, fn, selector)
7. event-bus
eventBus.on(event, fn)
eventBus.emit(event, data)
eventBus.off(event)
8. pub-sub
pubSub.subscribe(channel, fn)
pubSub.publish(channel, data)
pubSub.publishSync(channel, data)
pubSub.unsubscribe(flag)
9. ajax
axios({url, method, params, data})
get(url, options)
post(url, data, options)
put(url, data, options)
delete(url, options)
nodeJS
