underscore replacement for HUGE ARRAYS (MILLIONS)
JavaScript
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
README.md
upperscore.js

README.md

upperscore

underscore replacement for HUGE ARRAYS (MILLIONS)

there is jquery dependency just because of promises and has to be removed, all array functions are promissed and they use setTimeout to simulate threads so you can parse a million item array in background, without crashing the browser since with my experience underscore cant handle more than 4000 without poping out the stop script window ;) and the sort function is VERY FAST, it sorts 200K object array in 3-4 sec based on the key, 2M object array can take upto 30-60sec if the key is string, integers much much faster

array functions:

removeAll = function (source, except, patch, isObject)
without = function (source, except, isObject)
defined = function (source)
remove = function (source, handler, patch)
unset = function (source, handler, patch)
map = function (source, options) // options => { 'oldKey': 'newKey' }
each = function (data, handler)
eachReverse = function (data, handler)
eachLazy = function (data, handler, lazy)
eachLong = function (data, handler)
times = function (times, handler)
range = function (start, end)
slice = function (source, start, end)
groupBy = function (source, key)
countBy = function (source, key)
where = function (source, predict, key)
contains = function (source, predict)
pluck = function (source, key)
max = function (source, key)
min = function (source, key)
first = function (source, predict)
last = function (source, predict)
indexOf = function (source, predict)
lastIndexOf = function (source, predict)
after = function (source, predict)
before = function (source, predict)
unique = function (source, key)
duplicates = function (source, key)
mark = function (source, predict, flag, patch)
removeMarked = function (source, flag, patch)
partition = function (source, count)
pick = function (source, keys)
dataTable = function (source, keys)
swap = function (items, firstIndex, secondIndex)
sort = function (source, key, desc, patch)
reverse = function (source)

extra functions:

equals
isNaN
isBoolean
isNull
isArguments
isFunction
isString
isNumber
isDate
isRegExp
isUndefined
isDefined
isArray
extend
clone
has
isObject
values
pairs
keys

HI evey body, i know it doesnt have any documentation (YET??HELP!!) but just take a look :D and ofcourse any help would be appreciated