underscore extensions
version 0.0.2 (source)
a couple extemporaneous additions to everyone's fav_rite javascript library
ex•tem•po•ra•ne•ous |ikˌstempəˈrānēəs|
ajective
spoken or done without preparation: an extemporaneous speech.
those are cobras, man
_.memo(list, iterator, [memo], [context])
just like reduce
except it automatically returns memo
for you
each time. and if you leave out the initial memo
parameter, it
defaults to a new object.
params:
-
list
: an array or object or something -
iterator
: a function that will be called as follows for each item inlist
:iterator.call(context, memo, value, key)
-
memo
(optional): return value of previous call toiterator
. defaults to an empty object literal{}
-
context
: the context in whichiterator
will be called. defaults to 'this'
returns: the return value from the last call of iterator
_.prop(obj, value, [key])
kinda like jquery prop()
or attr()
. in fact it's a lot like
jquery prop()
and attr()
. except for strait up js objects.
obj
is updated w/ the properties using _.extend()
:
_.extend(obj, props);
params:
-
obj
: any js object -
key
: either a string for the property name or an object -
value
(optional): the value of the property (if a string was given forkey
)
returns: the object. what did you expect?