Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings
Evan Schallerer edited this pageAug 23, 2022 ·11 revisions

See thev4.0.0 release notes for an overview ofwhat’s new in 4.0.0.Uselodash-migrate,lodash-codemods, &eslint-plugin-lodash to help migrate pre-4 lodash code to the latest release.

v4.17.21

February 21, 2021DiffDocs

  • Prevent command injection through_.template's variable option
  • Improve performance oftoNumber,trim andtrimEnd on large input strings

v4.17.20

August 14, 2020DiffDocs

  • Fixed issue with dependencies mapping
  • Ensured modularized files in the lodash package are up to date

v4.17.19

July 8, 2020DiffDocs

  • Allowed_.sortedIndexBy methods to short-circuit for empty arrays
  • Ensured_.orderBy accepts iteratee path arrays
  • Ensured_.isEqual returns accurate results without depending on parameter order for circular references
  • SanitizedsourceURL in_.template
  • Fixprototype pollution bug in_.zipObjectDeep
  • Note: releases of 4.17.16 to 4.17.18 of the lodash npm package were corrupted; please update to more recent versions

v4.17.15

July 17, 2019DiffDocs

  • Removed unintentionally published project helper scripts

v4.17.14

July 10, 2019DiffDocs

  • Reverted use of the"type" field inpackage.json oflodash-es

v4.17.13

July 9, 2019DiffDocs

  • Fixed missing dependency of_createRound

v4.17.12

July 9, 2019DiffDocs

  • Ensured_.ceil,_.floor, &_round handleInfinity consistently
  • Ensured_.debounce clears old timers before starting new ones
  • Ensured_.mergeWith always provides astack tocustomizer
  • Ensured additions toObject.prototype don’t breaklodash initialization
  • Ensured map and set clones contain custom properties of source values
  • Fixedprototype pollution for_.defaultsDeep
  • Fixed prototype pollution for_.template options

v4.17.11

Sep. 12, 2018DiffDocs

  • Ensured_.merge handles function properties consistently regardless of number of sources
  • EnsuredObject.prototype is not augmented by_.merge
  • Ensured placeholder properties are set onfp.convert() results
  • AvoidedReDoS issue in_.words implementation

v4.17.10

Apr. 24, 2018DiffDocs

  • Updated Lodash for better Node.js 10 support

v4.17.5

Feb. 3, 2018DiffDocs

  • Ensured_.clone supports subclassed arrays
  • Ensured_.cloneDeep works with cyclical maps & sets
  • Ensured_.defaults avoids unnecessary source property access
  • Ensured_.invert doesn’t error on inverted values withouttoString methods
  • Ensured_.merge &_.mergeWith avoid augmenting__proto__ properties
  • Ensured_.set supports paths with symbols
  • Ensured_.words detects ordinals in compound words
  • Ensuredfp.update works with paths that refer to functions

v4.17.4

Dec. 31, 2016DiffDocs

  • Ensured_.omit with deep paths doesn’t mutateobject

v4.17.3

Dec. 24, 2016DiffDocs

  • Added support for symbol properties to_.isEqual
  • EnsuredgetSymbols helper only gets enumerable symbols
  • Ensured_.startsWith avoids coercingposition ofundefined
  • Flipped iteratee arguments forfp.reduceRight
  • Removed the array length limit for lazy evaluation

v4.17.2

Nov. 15, 2016DiffDocs

  • Ensured_.pick picks keys over paths
  • Ensured_.spread doesn’t include arguments after those spread
  • Fixed_.omit performance regression

v4.17.1

Nov. 14, 2016DiffDocs

  • Ensured_.omit copies shallow path values by reference
  • Ensured_.pick supports path arrays
  • Ensured_.pickBy doesn’t treat keys with dots or brackets as deep paths

v4.17.0

Nov. 13, 2016DiffDocs

  • Added deep path support to_.omit &_.pick
  • Ensuredfp.assignAllWith &fp.mergeAllWith accept more than two sources
  • Madeprocess.binding detection more cautious to avoid chatty debugging

v4.16.6

Oct. 31, 2016DiffDocs

  • Ensured_.xor returns an empty array when comparing the same array

v4.16.5

Oct. 30, 2016DiffDocs

  • Added support for ordinal numbers to_.words
  • Ensured_.xor works with more than two arrays
  • Ensuredfp.convert handles aliased & remapped methods
  • Improved “fp” debugging
  • Made “isType” methods resistant totoStringTag spoofing
  • Made_.isEmpty exit early for nullish values
  • Refined_.isError checks to avoid false positives for plain objects
  • Simplified_.isElement

v4.16.4

Oct. 6, 2016DiffDocs

  • Added support for buffers to_.transform
  • Added support for typed arrays to_.isEmpty
  • Ensured_.toString works on an array of symbols
  • Fixed_.merge regression with buffers
  • Normalized buffers & typed arrays keys in “keys” methods
  • Split_.isArguments out for older & newer environments

v4.16.3

Oct. 3, 2016DiffDocs

  • Added a_.runInContext check in the “fp” browser build
  • Ensured_.defaultsDeep &_.merge consistently assignundefined values
  • Fixed_.isFunction detection ofProxy in Safari 10
  • Made_.isEqual treat buffers differently thanUint8Array values
  • Removedes-sham requirement for older browsers

v4.16.2

Sept. 25, 2016DiffDocs

  • Fixed_.sampleSize performance regression
  • Made “clone” methods use newerBuffer APIs when available

v4.16.1

Sept. 20, 2016DiffDocs

  • Fixed backtick removal of_.escape &_.unescape
  • Improved parse time by 2x in V8

v4.16.0

Sept. 19, 2016DiffDocs

  • Addedfp.rangeStep &fp.rangeStepRight
  • Added a cache limit to internal_.memoize use
  • Avoided V8 de-opts in_.isElement,_.isObject, &_.isObjectLike
  • Dropped backtick encoding from_.escape &_.unescape
  • Dropped testing in Node.js 0.10 & 0.12
  • Ensured__proto__ is treated as a regular key in assignments
  • Fixed_.bind &_.partial performance regression
  • Optimized_.concat

v4.15.0

Aug. 12, 2016DiffDocs

v4.14.2

Aug. 8, 2016DiffDocs

  • Ensured methods work with mockedDate.now,clearTimeout, &setTimeout
  • Ensured paths of “set” methods overwrite primitives
  • Ensuredfp.nthArg returns a curried function
  • Reduced dependencies of_.initial,_.merge, &_.tail
  • Removed old JIT & engine bug guards

v4.14.1

July 29, 2016DiffDocs

  • Ensured paths with consecutive empty brackets or dots are parsed correctly
  • Ensured_.random & “range” methods coerce arguments to finite numbers
  • Fixed circular reference detection in_.cloneDeep
  • Removedglobal prerequisite forexports detection

v4.14.0

July 24, 2016DiffDocs

  • Added_.conformsTo &_.defaultTo
  • Added more “fp” aliases
  • Added “All” variants offp/assign,fp/defaults,fp/merge, &fp/zip methods
  • Ensured debouncedcancel usesclearTimeout
  • Ensured the alias_.first supports shortcut fusion
  • Ensured_.assignWith respectscustomizer results ofundefined
  • Ensured_.divide &_.multiply return1 when no arguments are specified
  • Ensured_.isEqual has transitive equivalence for circular references
  • Fixed argument order offp/zipObjectDeep
  • Simplified resolving the global object
  • Stopped unconditional global exports in the browser
  • Madeper method packages zero-dependency modules
  • Made wrapped functiontoString results more debuggable
  • Made “flatten” methods honorSymbol.isConcatSpreadable
  • Made_.isEqual treat invalid dates as equivalent
  • MadeLARGE_ARRAY_SIZE check instackSet align with others
  • Optimized adding values to stacks by not inspecting all key-value pairs
  • Optimized “isType” methods to use faster Node.js C++ helpers when available
  • Optimized_.endsWith,_.negate, &_.startsWith

v4.13.1

May 23, 2016DiffDocs

  • Ensured_.find &_.findLast provide the correctkey param when iterating objects

v4.13.0

May 22, 2016DiffDocs

  • Added_.stubArray,_.stubFalse,_.stubObject,_.stubString, &_.stubTrue
  • AddedfromIndex param to_.find,_.findIndex,_.findLast, &_.findLastIndex
  • Ensured empty brackets & dots in paths are treated as empty property names
  • Ensured_.pullAll works with the same value forarray &values
  • Ensured_.round works with largeprecision values
  • Ensured_.throttle works with a system time of0
  • Made_.isNative throw ifcore-jsis detected
  • Simplified UMD exports
  • Addedfp/findFrom,fp/findIndexFrom,fp/findLastFrom,fp/findLastIndexFrom,fp/indexOfFrom, &fp/lastIndexOfFrom
  • Fixed argument order offp/differenceBy,fp/differenceWith,fp/intersectionBy,fp/intersectionWith,fp/without,fp/unionBy,fp/unionWith,fp/xorBy, &fp/xorWith

v4.12.0

May 8, 2016DiffDocs

  • Added_.toFinite
  • Added iteratee arity hints to “forEach” methods
  • Added support for maps & sets to_.toPairs &_.toPairsIn
  • Ensured_.merge doesn’t skip trailing function sources
  • Ensuredfp/forEach,fp/forIn, &fp/forOwn cap their iteratee arguments
  • Ensuredfp/update does not convert end ofpath to an object
  • Ensured matches methods match arrays with duplicate values
  • Optimized “flatten” methods
  • Simplified_.concat
  • Updated cache implementations

v4.11.2

Apr. 21, 2016DiffDocs

  • Ensured_.pullAt correctly sorts indexes greater than9
  • Ensured_.words doesn’t treat punctuation as words
  • Ensured-0 works as path arguments
  • Ensured set methods like_.uniq &_.xor convert-0 to0

v4.11.1

Apr. 14, 2016DiffDocs

  • Addedfp/pluck as an alias offp/map
  • Ensured_.debounce defers invokingfunc whenleading isfalse &wait is0

v4.11.0

Apr. 13, 2016DiffDocs

  • Added_.nth
  • Added_.matchesProperty shorthand support to_.sortBy
  • Added support for contractions to case methods &_.words
  • Avoided unnecessary array cloning increateRecurryWrapper &mergeData
  • Ensuredfp/over doesn’t cap its iteratee arguments
  • Made_.head avoid accessingarray when its length is0

v4.10.0

Apr. 11, 2016DiffDocs

  • AddedisIterateeCall check to_.split
  • Addedfp/paths &fp/props as aliases offp/at
  • Addedfp/propEq as an alias offp/matchesProperty
  • Ensured_.debounce queues a trailing call for subsequent debounced calls aftermaxWait
  • Ensured_.split handles alimit of0 correctly in Node.js v0.10
  • Optimized handling of emojis in string methods
  • Removedfp/mapObj &fp/propOf aliases

v4.9.0

Apr. 8, 2016DiffDocs

  • Added back_.matchesProperty shorthand support to “over” methods
  • Ensured_.split works with emojis
  • Fixed malformedfp/toString &fp/valueOf modules

v4.8.2

Apr. 4, 2016DiffDocs

  • Reverted_.matchesProperty shorthand support for “over” methods

v4.8.1

Apr. 4, 2016DiffDocs

  • Fixed typo infp/_falseOptions

v4.8.0

Apr. 4, 2016DiffDocs

  • Addedfp/placeholder module &fp/__ alias
  • Addedconvert to unconverted “fp” methods
  • Added_.matchesProperty shorthand support to “over” methods
  • Avoided errors in older Firefoxes when coercingPromise to a string
  • Ensured_.has returnsfalse for nested nullish object values
  • Ensured_.has treats nested sparse arrays consistently
  • Fixed argument order offp/overArgs
  • Made_.chunk,_.repeat, &_.sampleSize defaultn to1 instead of0
  • Optimized_.matchesProperty shorthand

v4.7.0

Mar. 31, 2016DiffDocs

  • Added_.divide,_.flatMapDeep,_.flatMapDepth,_.meanBy, &_.multiply
  • Addedfp/convert,fp/invokeArgs,fp/invokeArgsMap,fp/padChars,fp/padCharsEnd,fp/padCharsStart,fp/restFrom, &fp/spreadFrom
  • Added_.entries as an alias of_.toPairs
  • Added_.entriesIn as an alias of_.toPairsIn
  • Added several “fp” aliases
  • Added support for buffers to_.isEmpty
  • Added support for maps & sets to_.isEmpty &_.size
  • Added support for deep cloning data views, maps, & sets
  • Added symbol support to_.omit,_.toNumber, &_.toPath
  • Avoided aJIT bug in Safari 9 forbaseIteratee
  • Ensured array sequence methods don’t error for falsey values
  • Ensured_.concat casts non-arrayarray values to arrays
  • Ensured_.has returnsfalse for nested inherited properties
  • Ensured_.isEqual compares promises by reference
  • Ensured_.isPlainObject returnsfalse for objects with a custom[[Prototype]]
  • Ensured_.mergeWith sources are cloned whencustomizer returnsundefined
  • Ensured_.startCase only uppercases the first character of each word
  • Ensured_.words detects words where an all caps word is next to a capitalized word
  • Fixed argument order offp/bind,fp/bindKey, &fp/isEqualWith
  • Fixed aliasesfp/all,fp/any, &fp/anyPass
  • Made_.result resolve values of functions as it deep crawls over them
  • MemoizedstringToPath
  • Optimized_.pad,_.padEnd,_.padStart, &_.toNumber
  • Refactored_.debounce to simplify, reduce timers, & fix bugs

v4.6.1

Mar. 1, 2016DiffDocs

  • OptimizedbaseClone to avoid cloning symbols for internal use

v4.6.0

Feb. 29, 2016DiffDocs

  • Added_.pullAllWith,_.update, &_.updateWith
  • Addedcore.min.js &lodash.min.js to the “fp” module ignored list
  • Ensured_.defaultsDeep does not overwrite regexp values
  • Ensured_.isEqual works with maps & sets with circular references
  • Ensured “fp” useslodash as the default placeholder
  • Ensuredstack is popped after a recursive merge so that it doesn’t affect sibling properties
  • Fixed order of arguments in “fp” docs
  • OptimizedbaseIsEqualDeep by removing a typed array check & unnecessary stack creation
  • Optimized_.assign,_.assignIn, &_.intersection
  • Optimized_.merge to avoid deep cloning sources if acustomizer is provided
  • Removed dead code fromgetNative
  • ReplacedSymbol checks withSymbol methods checks

v4.5.1

Feb. 21, 2016DiffDocs

  • Addedcore.min.js &lodash.min.js to the npm package
  • Ensured placeholders persist through more than one curried call
  • EnsuredassignValue assigns values if they aren’t the same own value
  • Ensured “fp” methods avoid unnecessary cloning
  • Ensuredfp/omitBy &fp/pickBy providevalue &key params to iteratees
  • Fixed arity offp/orderBy
  • UsedgetPrototypeOf to set inheritance whenconstructor is a function

v4.5.0

Feb. 17, 2016DiffDocs

  • Enabled support for cloning expando properties of boolean, number, & string objects
  • Ensuredfp/convert wrappers support iteratee shorthands

v4.4.0

Feb. 15, 2016DiffDocs

  • Added_.castArray &_.flattenDepth
  • Fixed argument order offp/inRange &fp/zipWith
  • Enabledfp/convert to auto wraplodash in the browser
  • Enabledfp/convert to work when givenlodash withoptions
  • Ensuredfp/convertoptions works when applied individually
  • Ensuredfp/convert works with category modules
  • Ensured_.isError works with subclassed values
  • Ensured_.merge deep clones array, typed-array, & plain-object sources
  • Ensured a debouncedmaxWait timeout isn’t processed on a leading call whenleading isfalse & there isn’t a max delay queued

v4.3.0

Feb. 7, 2016DiffDocs

v4.2.1

Feb. 3, 2016DiffDocs

  • Added remap offp/trim asfp/trimChars forchars param support
  • Ensured wrapped_.bind,_.curry, &_.partial support placeholders
  • Ensuredfp/_baseConvert uses_.spread for_.partial wrapper
  • Ensuredfp/add &fp/subtract don’t haverearg applied

v4.2.0

Feb. 2, 2016DiffDocs

  • Addedfp/assoc &fp/assocPath as aliases offp/set
  • Addedfp/dissoc &fp/dissocPath as aliases offp/unset
  • Addedstart param to_.spread
  • Ensured_.attempt preserves custom errors
  • Ensuredfp/partial &fp/partialRight accept anargs param
  • Ensuredfp/unset is immutable
  • Ensured_.iteratee clones sources for_.matchesProperty shorthand
  • Made_.flatMap a “Collection” method
  • Removedglobal references from the npm package

v4.1.0

Jan. 29, 2016DiffDocs

  • Added_.invertBy &_.zipObjectDeep
  • Added cherry pickable “fp” method modules to the npm package
  • Ensuredfp/convert works with aliases
  • Ensured_.clone &_.cloneDeep work on prototype objects
  • Ensured_.mergeWith overwrites primitives with source object clones
  • Ensured_.sum &_.sumBy return0 for empty arrays
  • Optimized_.isEmpty for objects
  • Fixed argument order offp/assign,fp/defaults, &fp/merge

v4.0.1

Jan. 25, 2016DiffDocs

  • Added_.matches to the core build
  • Added placeholder support to “fp” methods
  • Added support for keycap emojis
  • Ensured_.concat returns an empty array for nullish values
  • Ensured_.each &_.eachRight aliases have the correct chain behavior
  • Ensured_.defaultsDeep doesn’t convert function properties to objects
  • Ensured_.fromPairs can consume results of_.toPairs
  • Ensured_.isEqual compares objects unordered
  • Ensured_.noConflict restores_ only iflodash is the current value
  • Ensured_.words captures all-caps words
  • Ensured_.words treats all-lower & all-upper postfixes as separate words
  • Fixed “fp” mapping of several methods
  • Made_.omitBy &_.pickBy provide akey param to iteratees

v4.0.0

Jan. 12, 2016DiffDocs

Compatibility Warnings
  • Removed Bower & Component package support in favor of npm

  • DroppedIE 6-8 support

  • Made_#times,_#forEach,_#forIn,_#forOwn, & their right-forms implicitly end chain sequences
varwrapped=_([1,2,3]);// in 3.10.1wrapped.forEach(function(n){console.log(n);});// ➜ returns the lodash wrapper without logging until `value` is calledwrapped.forEach(function(n){console.log(n);}).value();// ➜ logs each value from left to right and returns the array// in 4.0.0wrapped.forEach(function(n){console.log(n);});// ➜ logs each value from left to right and returns the array
  • Removed category names from module paths
// in 3.10.1varchunk=require('lodash/array/chunk');// in 4.0.0varchunk=require('lodash/chunk');
  • Removed_.pluck in favor of_.map with iteratee shorthand
varobjects=[{'a':1},{'a':2}];// in 3.10.1_.pluck(objects,'a');// ➜ [1, 2]_.map(objects,'a');// ➜ [1, 2]// in 4.0.0_.map(objects,'a');// ➜ [1, 2]
  • RemovedthisArg params from most methods because they were largely unused,complicated implementations, & can be tackled with_.bind,Function#bind,or arrow functions
varobjects=[{'a':1},{'a':2}];varcontext={'b':5};functioncallback(item){returnitem.a+this.b;}// in 3.10.1_.map(objects,callback,context);// in 4.0.0_.map(objects,_.bind(callback,context));
vararray=[1,2,3],objects=[{'a':1},{'a':2}];// in 3.10.1_.max(array);// ➜ 3_.max(objects,'a');// ➜ { 'a': 2 }_.min(array);// ➜ 1_.min(objects,'a');// ➜ { 'a': 1 }// in 4.0.0_.max(array);// ➜ 3_.maxBy(objects,'a');// ➜ { 'a': 2 }_.min(array);// ➜ 1_.minBy(objects,'a');// ➜ { 'a': 1 }
  • Method removals
    • Removed_.support
    • Removed_.findWhere in favor of_.find with iteratee shorthand
    • Removed_.where in favor of_.filter with iteratee shorthand
    • Removed_.pluck in favor of_.map with iteratee shorthand
  • Method renames
    • Renamed_.first to_.head
    • Renamed_.indexBy to_.keyBy
    • Renamed_.invoke to_.invokeMap
    • Renamed_.modArgs to_.overArgs
    • Renamed_.padLeft &_.padRight to_.padStart &_.padEnd
    • Renamed_.pairs to_.toPairs
    • Renamed_.rest to_.tail
    • Renamed_.restParam to_.rest
    • Renamed_.sortByOrder to_.orderBy
    • Renamed_.trimLeft &_.trimRight to_.trimStart &_.trimEnd
    • Renamed_.trunc to_.truncate
  • Split out methods
    • Split_.assign &_.assignIn into_.assignWith &_.assignInWith
    • Split_.clone &_.cloneDeep into_.cloneWith &_.cloneDeepWith
    • Split_.indexOf &_.lastIndexOf into_.sortedIndexOf &_.sortedLastIndexOf
    • Split_.invert into_.invertBy (seev4.1.0)
    • Split_.isEqual into_.isEqualWith
    • Split_.isMatch into_.isMatchWith
    • Split_.max &_.min into_.maxBy &_.minBy
    • Split_.merge into_.mergeWith
    • Split_.omit &_.pick into_.omitBy &_.pickBy
    • Split_.sample into_.sampleSize
    • Split_.sortedIndex into_.sortedIndexBy
    • Split_.sortedLastIndex into_.sortedLastIndexBy
    • Split_.sum into_.sumBy
    • Split_.uniq into_.sortedUniq,_.sortedUniqBy, &_.uniqBy
    • Split_.zipObject into_.fromPairs
  • Absorbed_.sortByAll into_.sortBy
  • Changed the category of_.at to “Object”
  • Changed the category of_.bindAll to “Util”
  • Changed_.matchesProperty shorthand to an array of[path, srcValue]
  • Enabled_.merge to assignundefined if the destination property doesn’t exist
  • Made “By” methods like_.groupBy &_.sortBy provide a single param to iteratees
  • Made_.add,_.max,_.min, &_.sum no longer coerce values to numbers
  • Made_.capitalize uppercase the first character & lowercase the rest (see_.upperFirst)
  • Made_.eq its own method instead of an alias for_.isEqual
  • Made_.functions return only own method names
  • Made_.max &_.min returnundefined when passed an empty array
  • Made_.words chainable by default
  • Moved./lodash.js to./dist/lodash.js in themaster branch
  • Moved./index.js to./lodash.js in thenpm branch
  • RemovedisDeep params from_.clone &_.flatten
  • RemovedmultiValue param from_.invert
  • Removed support for binding all methods by default from_.bindAll
  • Removedfunc-first param signature from_.before &_.after
Low Risk Compatibility Warnings
  • Dropped booleanoptions param support in_.debounce,_.mixin, &_.throttle
  • Dropped support for booleanorders param in_.orderBy
  • Made_.escapeRegExp align to the defunct ES7 proposal
  • Made_.max,_.min, &_.sum support arrays only
  • Removed legacyoptions param signature from_.template
Notable Changes
Other Changes
  • Addedclear method to_.memoize.Cache
  • Addedflush method to debounced & throttled functions
  • Added support for maps, sets, & symbols to_.clone,_.isEqual, &_.toArray
  • Added support for array buffers to_.isEqual
  • Added support for converting iterators to_.toArray
  • Added support for deep paths to_.zipObject
  • Changed UMD to export towindow orself when available regardless of other exports
  • Enabled_.flow &_.flowRight to accept an array of functions
  • Ensured “Collection” methods treat functions as objects
  • Ensured debouncecancel clearsargs &thisArg references
  • Ensured_.add &_.sum don’t skipNaN values
  • Ensured_.assign,_.defaults, &_.merge coerceobject values to objects
  • Ensured_.bindKey bound functions callobject[key] when called with thenew operator
  • Ensured_.clone treats generators like functions
  • Ensured_.clone produces clones with the source’s[[Prototype]]
  • Ensured_.defaults assigns properties that shadowObject.prototype
  • Ensured_.defaultsDeep doesn’t merge a string into an array
  • Ensured_.defaultsDeep &_.merge don’t modify sources
  • Ensured_.defaultsDeep works with circular references
  • Ensured_.isFunction returnstrue for generator functions
  • Ensured_.keys skips “length” on strict modearguments objects in Safari 9
  • Ensured_.merge assigns typed arrays directly
  • Ensured_.merge doesn’t convert strings to arrays
  • Ensured_.merge merges plain-objects onto non plain-objects
  • Ensured_#plant resets iterator data of cloned sequences
  • Ensured_.random swapsmin &max ifmin is greater thanmax
  • Ensured_.range preserves the sign ofstart of-0
  • Ensured_.reduce &_.reduceRight usegetIteratee in their array branch
  • Fixed rounding issue with theprecision param of_.floor
  • Made_(...) an iterator & iterable
  • Made_.drop,_.take, & right forms coercen ofundefined to0

v3.10.1

Aug. 4, 2015DiffDocs

  • Ensuredfunc is a function before callinggetData
  • Ensured_.clone provides the correct number of arguments tocustomizer
  • Ensured_#reverse doesn’t modify the original array when called after_#slice

v3.10.0

June 30, 2015DiffDocs

  • Added_.ceil,_.defaultsDeep,_.floor,_.modArgs, &_.round
  • Ensured_.bind works with all built-in constructors
  • Ensured_#concat treats sparse arrays as dense
  • Ensured_.chunk floorssize values
  • Ensured_.debounce &_.throttle resetlastCall after cancelling
  • Ensure_.flow &_.flowRight work with functions combined with_.first
  • Ensured_.indexOf returns-1 for unmatched binary searches
  • Ensured_.noConflict operates onroot & notcontext
  • Made_.escapeRegExp more robust
  • Made_.sortByOrder support orders of “asc” & “desc”
  • Optimized_.flatten,_.max, &_.min
  • Removed fallbacks for_.isArguments,_.isFunction, &_.isPlainObject
  • Simplified lazy evaluation support
  • Simplified_.isElement,_.isFinite,_.isNative,_.now,_.parseInt, &_.sum

v3.9.3

May 26, 2015DiffDocs

  • MadeparseFloat assigned from thecontext param of_.runInContext
  • Ensured_.set handles non-index property names that start with numbers correctly

v3.9.2

May 24, 2015DiffDocs

  • MadeisLaziable work with wrapped lodash methods
  • Optimized an early exit case in_.isEqual
  • Optimized_.sample

v3.9.0

May 19, 2015DiffDocs

  • Added_.gt,_.gte,_.lt, &_.lte
  • Added support for anImmutableMap to_.memoize.Cache
  • Avoided usingrequire in source comments to improve browserify build times
  • EnsuredbaseCreate works in ExtendScript
  • Ensuredcustomizer results are respected by_.isEqual
  • EnsuredLodashWrapper.prototype.thru exists before creating a wrapper inflow
  • Ensured_.bind works with ES2015 class constructors
  • Ensured_.get can returnnull values
  • Ensured_.intersection works with a single array
  • Ensured_.has treats sparse arrays as dense
  • Ensured_.merge skipsundefined array values if a destination value exists
  • Madenull sort behindundefined &NaN
  • Made_.eq an alias of_.isEqual
  • Optimized object comparisons in_.isEqual
  • Optimized_.max &_.min when invoked with iteratees
  • Optimized_.pullAt &_.remove
  • UsedhasOwnProperty for the creation ofreIsNative to avoid issues with core-js

v3.8.0

May 1, 2015DiffDocs

  • Added_.mapKeys,_.unzipWith, &_.zipWith
  • Made_.difference,_.intersection,_.uniq, &_.xor accept array-like values
  • Ensured empty brackets are ignored by_.get &_.set
  • EnsuredbaseAt,basePullAt, &pullAt handle nullish values
  • EnsuredbaseGet only returnsundefined for incomplete paths
  • Ensured_.padLeft &_.padRight handle empty strings correctly
  • Made_.isEqual treat-0 &0 as equivalent
  • Narrowed bitmask checks in_.flow &_.flowRight
  • Optimized lazyslice forstart of0
  • Optimized “flatten” methods
  • RestrictedObject.assign use to strict mode only

v3.7.0

Apr. 15, 2015DiffDocs

  • Added_.get,_.method,_.methodOf, &_.set
  • Avoided aJIT bug in Safari on at least iOS 8.1-8.3 ARM64
  • Ensured_.intersection of a single array returns an empty array
  • Ensured_.remove mutatesarray after thepredicate pass
  • Ensured methods like_.has &_.get can access index values of strings
  • MadecreateAssigner &_.sortByAll use_.restParam
  • Made_.add coerceaugend &addend params to numbers
  • Made_.assign use built-inObject.assign when available
  • Made_.inRange swapstart &end params whenstart is greater thanend
  • Added deep path support to methods like_.has,_.get,_.callback,_.invoke,_.matchesProperty,_.method,_.methodOf,_.property,_.propertyOf,_.result, &_.set

v3.6.0

Mar. 25, 2015DiffDocs

  • Added_.restParam
  • AddedisIterateeCall guards to_.every,_.includes, &_.some
  • Added support foriteratee &thisArg params to_.sum
  • Added support for shortcut fusion optimizations to_.flow &_.flowRight
  • Ensured lodash bundled by r.js runs in a web worker
  • Ensured_.deburr removes combining diacritical marks
  • Ensured_.difference is based on the values of the first param only
  • Expanded metadata optimizations to more combinations of curried functions
  • Made_.matches work with non-plain objects & match inherited properties
  • Optimized_.findLast,_.reduce, &_.reduceRight
  • Reduced code duplication with internal method creator functions

v3.5.0

Mar. 8, 2015DiffDocs

  • Added stringreplace &split chaining methods
  • Ensured lazydrop works when applied afterfilter
  • Optimized curried method performance

v3.4.0

Mar. 6, 2015DiffDocs

  • Added_.add,_.sortByOrder, &_.sum
  • Adjustedroot to work when bundled by webpack & running in a web worker
  • Ensured lazy chaining works with combinations ofdrop &dropWhile
  • Ensured_.defaults works as an iteratee for_.reduce
  • Reduced side effects of shortcut fusion
  • OptimizedbaseFlatten,baseIndexOf,indexOfNaN,_.flow, &_.flowRight
  • Optimized lazy evaluation for iteratees with one param

v3.3.1

Feb. 24, 2015DiffDocs

  • Ensured lazytakeWhile works with lazyreverse &last
  • Ensuredwait defaults to0 for_.debounce &_.throttle
  • EnsuredisIterateeCall doesn’t error ifindex is missing atoString method
  • Optimized_.difference,_.intersection, &_.uniq in Firefox

v3.3.0

Feb. 20, 2015DiffDocs

  • Added_.inRange
  • Added links to each method’snpm package to thedocumentation
  • Enabled_.clone to work with more truthyisDeep values
  • Ensured each lodash wrapper module sets up their inheritance
  • EnsuredisIterateeCall works withNaN values
  • Ensured_.merge avoids iterating stringobject orsource params
  • Optimized_.attempt
  • Reduced nested dependencies of_.template

v3.2.0

Feb. 12, 2015DiffDocs

  • Added_.fill,_.matchesProperty, &_.spread
  • Added_#commit &_#plant
  • Added support for lazy_.compact &_.toArray
  • Enabled_.attempt to provide additional arguments tofunc
  • Ensured_.flow returns an identity function when called without arguments
  • Ensured_#reverse tracks__chain__ values
  • Ensured lazy_.slice handles floating-pointstart &end params
  • Fixed lazy_.slice when used after_.filter
  • Made_#run an alias of_#value

v3.1.0

Feb. 3, 2015DiffDocs

  • Added_.startCase
  • EnsuredisIterateeCall works correctly with objects

v3.0.1

Jan. 30, 2015DiffDocs

  • Ensured_.slice coerces floating-pointstart &end params to integers
  • Fixed lazyinitial,rest, &reverse
  • Fixed_.merge regression with DOM elements

v3.0.0

Jan. 26, 2015DiffDocs

Compatibility Warnings
  • Made chaining lazy, that is, execution is deferred until_#value is implicitly or explicitly called
varwrapped=_([1,2,3]);// in 2.4.1wrapped.forEach(function(n){console.log(n);});// ➜ logs each value from left to right and returns the lodash wrapper// in 3.0.0wrapped.forEach(function(n){console.log(n);});// ➜ returns the lodash wrapper without logging until `value` is calledwrapped.forEach(function(n){console.log(n);}).value();// ➜ logs each value from left to right and returns the array
  • Ensured each segment of a chain sequence may be repeatly applied
vararray=[1],wrapped=_(array);// in 2.4.1vara=wrapped.push(2),// pushes `2` to `array`b=wrapped.push(3);// pushes `3` to `array`a.value();// ➜ returns `array`; [1, 2, 3]b.value();// ➜ returns `array`; [1, 2, 3]// in 3.0.0vara=wrapped.push(2),// creates a lazy sequence to push `2` to `array`b=wrapped.push(3);// creates a lazy sequence to push `3` to `array`a.value();// ➜ pushes `2` to `array` and returns `array`; [1, 2]b.value();// ➜ pushes `3` to `array` and returns `array`; [1, 2, 3]a.value();// ➜ pushes `2` to `array` and returns `array`; [1, 2, 3, 2]b.value();// ➜ pushes `3` to `array` and returns `array`; [1, 2, 3, 2, 3]// use `_#commit` to commit a sequence and continue chainingvara=wrapped.push(2).commit(),// pushes `2` to `array`b=wrapped.push(3).commit();// pushes `3` to `array`a.value();// ➜ returns `array`; [1, 2, 3]b.value();// ➜ returns `array`; [1, 2, 3]
  • Made_.flatten shallow by default & removecallback support
vararray=[1,[[2],3]],objects=[{'a':[1]},{'a':[2,3]}];// in 2.4.1_.flatten(array);// ➜ [1, 2, 3]_.flatten(objects,'a');// [1, 2, 3]// in 3.0.0_.flatten(array);// ➜ [1, [2], 3]_.flattenDeep(array);// ➜ [1, 2, 3]_(objects).pluck('a').flatten().value();// [1, 2, 3]
  • Removed thedata parameter from_.template
varstring='<%= o.a %>',options={'variable':'o'},data={'a':'b'};// in 2.4.1_.template(string,data,options);// ➜ 'b'// in 3.0.0_.template(string,options)(data);// ➜ 'b'
  • Split_.first &_.last into_.take,_.takeWhile,_.takeRight, &_.takeRightWhile
vararray=[1,2,3],lessThanTwo=function(value){returnvalue<2;},greaterThanTwo=function(value){returnvalue>2;};// in 2.4.1_.first(array);// ➜ 1_.first(array,2);// ➜ [1, 2]_.first(array,lessThanTwo);// ➜ [1]_.last(array);// ➜ 3_.last(array,2);// ➜ [2, 3]_.last(array,greaterThanTwo);// ➜ [3]// in 3.0.0_.first(array);// ➜ 1_.take(array,2);// ➜ [1, 2]_.takeWhile(array,lessThanTwo);// ➜ [1]_.last(array);// ➜ 3_.takeRight(array,2);// ➜ [2, 3]_.takeRightWhile(array,greaterThanTwo);// ➜ [3]
  • Split_.initial &_.rest into_.dropRight,_.dropRightWhile,_.drop, &_.dropWhile
vararray=[1,2,3],lessThanTwo=function(value){returnvalue<2;},greaterThanTwo=function(value){returnvalue>2;};// in 2.4.1_.initial(array);// ➜ [1, 2]_.initial(array,2);// ➜ [1]_.initial(array,greaterThanTwo);// ➜ [1, 2]_.rest(array);// ➜ [2, 3]_.rest(array,2);// ➜ [3]_.rest(array,lessThanTwo);// ➜ [2, 3]// in 3.0.0_.initial(array);// ➜ [1, 2]_.dropRight(array,2);// ➜ [1]_.dropRightWhile(array,greaterThanTwo);// ➜ [1, 2]_.rest(array);// ➜ [2, 3]_.drop(array,2);// ➜ [3]_.dropWhile(array,lessThanTwo);// ➜ [2, 3]
  • Aligned_.isFinite &_.keys with ES2015
  • Changed the category of_.clone &_.cloneDeep, & “isType” methods from “Object” to “Lang”
  • Changed the category of_.escape,_.template, &_.unescape from “Util” to “String”
  • Changed the category of_.range from “Array” to “Util”
  • Changed the category of_.toArray from “Collection” to “Lang”
  • Made method categories singular
  • Made “Object” methods coerce primitives to objects
  • Made_.clone &_.cloneDeep return a new object for unsupported types
  • Made_.findWhere its own method instead of an alias for_.find
  • Made_.max &_.min non-chainable by default
  • Made_.memoize caches have theMap interface ofdelete,get,has, &set
  • Made_.unzip its own method instead of an alias for_.zip
  • Moved./dist/lodash.js to./lodash.js in themaster branch
  • Moved./dist/lodash.js to./lodash.js in thenpm branch
  • Moved./dist/lodash.compat.js to thelodash/lodash-compat repository
  • Moved support for sorting by multiple properties from_.sortBy to_.sortByAll
  • Removed result sorting from_.functions
  • Removed theunderscore build
  • Renamed_.createCallback to_.callback
  • Renamed_.support.argsClass to_.support.argsTag
  • Renamed_.support.nodeClass to_.support.nodeTag
  • Restricted_.mixin to iterating only own properties ofsource objects
  • Expanded the number of arguments provided tocustomizer callbacks of_.assign,
    _.clone,_.cloneDeep,_.isEqual, &_.merge
Low Risk Compatibility Warnings
  • Added customizable argument placeholder support to_.bind,_.bindKey,_.curry,_.curryRight,_.partial, &_.partialRight
  • Added support for matchingNaN to_.difference,_.includes,_.indexOf,_.intersection,_.lastIndexOf,_.union,_.uniq, &_.xor
  • Ensured_.assign &_.merge don’t assigncustomizer results if it’s unchanged
  • Ensured_.mixin doesn’t extend lodash when given an emptyoptions object
  • Ensured_.sortedIndex returns values that align with the sort order of_.sortBy
  • Ensured functions of_.matches returntrue when comparing empty sources
  • Ensured functions of_.matches perform own property checks on objects
  • Made_.chain use an existing wrapper if available instead of creating a new wrapper
  • Removed theargCount parameter from_.callback
Notable Changes
  • Added 47 methods
  • 17 string methods:
    _.camelCase,_.capitalize,_.deburr,_.endsWith,_.escapeRegExp,_.kebabCase,_.pad,_.padLeft,_.padRight,_.repeat,_.snakeCase,_.startsWith,_.trim,_.trimLeft,_.trimRight,_.trunc, &_.words

  • 11 array methods:
    _.chunk,_.dropRight,_.dropRightWhile,_.dropWhile,_.flattenDeep,_.pullAt,_.slice,_.sortedLastIndex,_.takeRight,_.takeRightWhile, &_.takeWhile

  • 6 function methods:
    _.ary,_.before,_.curryRight,_.flow,_.negate, &_.rearg

  • 5 lang methods:
    _.isError,_.isMatch,_.isNative,_.isTypedArray, &_.toPlainObject

  • 3 utility methods:
    _.attempt,_.matches, &_.propertyOf

  • 2 collection methods:
    _.partition &_.sortByAll

  • 2 object methods:
    _.keysIn &_.valuesIn

  • 1 chain method:
    _.thru

  • Added 5 aliases
  • Added_.backflow &_.compose as aliases of_.flowRight
  • Added_.contains as an alias of_.includes
  • Added_.iteratee as an alias of_.callback
  • Added_#toJSON as an alias of_#valueOf
  • Performance improvements
  • Improved overall performance 20-40%
  • Method chaining supports lazy evaluation
  • Methods with support for shortcut fusion:
    _.drop,_.dropRight,_.dropRightWhile,_.dropWhile,_.filter,_.first,_.initial,_.last,_.map,_.pluck,_.reject,_.rest,_.reverse,_.slice,_.take,_.takeRight,_.takeRightWhile,_.takeWhile, &_.where
  • Other optimized methods:
    _.bind,_.clone,_.cloneDeep,_.compact,_.compose,_.contains,_.difference,_.escape,_.flatten,_.invoke,_.isEqual,_.isObject,_.matches,_.max,_.min,_.partial,_.shuffle,_.unescape,_.uniq,_.without, &_.zip
  • Functional goodies
  • Added_.ary,_.curryRight,_.flow, &_.rearg
  • Added placeholder support to_.bind,_.bindKey,_.curry,_.curryRight,_.partial, &_.partialRight
  • Methods that work as an iteratee for_.map, & the like, out of the box:
    _.ary,_.callback,_.chunk,_.clone,_.create,_.curry,_.curryRight,_.drop,_.dropRight,_.flatten,_.invert,_.max,_.min,_.parseInt,_.slice,_.sortBy,_.take,_.takeRight,_.template,_.trim,_.trimLeft,_.trimRight,_.trunc,_.random,_.range,_.sample,_.uniq, &_.words
  • Methods that work as an iteratee for_.reduce, & the like, out of the box:
    _.assign,_.defaults,_.merge, &_.sortAllBy
Other Changes
  • Added cherry pickable method modules to the npm package
  • Addedcancel method to debounced & throttled functions
  • AddeddefaultValue param to_.result
  • AddedmultiValue param to_.invert
  • AddedthisArg param to_.tap
  • Added_.memoize.Cache to enableMap/WeakMap to be used
  • Added support for cloning array buffers & typed arrays to_.clone &_.cloneDeep
  • Added support for comparing error objects & typed arrays to_.isEqual
  • Enabled thesourceURL option of_.template to work in production builds
  • Ensured_.at,_.matches, &_.pullAt work with falsey values when keys are given
  • Ensured_.callback doesn’t error whenfunc is nullish &thisArg is given
  • Ensured_.callback supports binding built-in methods
  • Ensured_.debounce &_.throttle work if the system time is set backwards
  • Ensured_.difference works with arrays regardless of argument position
  • Ensured_.findWhere &_.where always use_.matches
  • Ensured_.includes supportsfromIndex when iterating objects
  • Ensured_.indexOf([], undefined, true) returns-1 instead of0
  • Ensured_.intersection ignores non-array secondary values
  • Ensured_.isEqual works with wrapped objects containingconstructor properties
  • Ensured_.keys treats sparse arrays as dense
  • Ensured_.keys works with string objects in IE < 9
  • Ensured_.matches comparison isn’t affected by changes tosource objects
  • Ensured_.max &_.min return the correct value whencallback computes ±Infinity
  • Ensured_.merge ignoresundefined values ofsource object properties
  • Ensured_.partial &_.partialRight work with curried functions
  • Ensured_.pluck always uses_.property
  • Ensured_.random returns1 or0 when called with no arguments
  • Ensured_.range,_.slice, & other methods handleNaN arguments
  • Ensured_.runInContext uses a zeroed_.uniqueId counter
  • Ensured_.transform checks thatobject is an object before using its[[Prototype]]
  • Ensured_.where handlessource objects withundefined property values
  • Ensured_.where only returns elements that contain all source array/object values
  • Ensured browserified lodash works in web workers
  • Ensured customizing_.indexOf affects_.includes when iterating objects
  • Ensured lodash works inNW.js
  • Ensured lodash doesn’t addFunction.prototype extensions to its prototype
  • Fixed_.isFunction for typed array constructors in Safari 8
  • Made_.escape &_.unescape handle backticks
  • Made_.isElement more robust
  • Made_.parseInt more closely follow spec
  • Made_.wrap use_.identity whenwrapper is nullish
  • Made templates avoid referencing_.escape if “escape” delimiters are not used
  • Made array-like object checks follow ES2015ToLength
  • Made use ofSet in_.difference,_.intersection, &_.uniq
  • Removed array & object pools
  • Removed all method compilation from thecompat build
  • Updated the sourceURL syntax used by_.template

v2.4.2

Apr. 26, 2015DiffDocs

  • Avoided memory leaks in_.bind,_.bindKey,_.curry,_.partial, &_.partialRight

v2.4.1

Dec. 2, 2013DiffDocs

  • Ensured__bindData__ is properly cloned
  • Ensured_.isEqual can compare cyclical objects with shared property values
  • Optimized_.partial &_.partialRight
  • Reached ~100% code coverage

v2.4.0

Nov. 25, 2013DiffDocs

  • Added_.constant,_.mapValues,_.now,_.property, &_.xor
  • Added anoptions param to_.mixin to specify whether functions added are chainable
  • Added support for_.sortBy to accept an array of property names to sort by
  • Enabled_.zipObject to accept an array ofkeys with novalues param
  • Removed conditionalsetImmediate use from_.defer

v2.3.0

Nov. 10, 2013DiffDocs

  • Added_.create &_.noop
  • Avoided memory leaks in_.debounce &_.throttle
  • Enhanced_.createCallback to avoid binding functions bound byFunction#bind
  • Ensured rebound functions correctly partially apply arguments
  • Ensured_.isEqual works with values fromObject.create(null) &_(false)
  • Ensured_.min &_.max work as callbacks for_.map
  • Ensured_.template coerces thetext param to a string
  • Optimized_.difference,_.omit, &_.without by way ofbaseDifference
  • Optimized_.isBoolean,_.isNumber, &_.isString for thefalse case
  • Optimized_.sample &_.shuffle by way ofbaseRandom
  • Reduced_.wrap by way ofcreateBound
  • Removed nativeFunction#bind use for better cross-environment consistency

v2.2.1

Oct. 3, 2013DiffDocs

  • Ensured_.mixin creates functions that work with_.chain
  • Ensured the thecreateObject fallback is included in themodern build

v2.2.0

Sept. 28, 2013DiffDocs

  • Added_.clone support for date, regexp, & other built-in objects
  • Ensured_.random avoids excessive results of0 for floating-point numbers
  • Madecompat &underscore builds useDate.now when available
  • Reduced dependencies ongetObject &releaseObject

v2.1.0

Sept. 22, 2013DiffDocs

  • AddedObject.defineProperty fallback for themodern build
  • Added support to_.random to explicitly specify floating point numbers
  • Enabled_.compose to be invoked without arguments
  • Ensured_.flatten works with extremely large arrays
  • Ensured_.support properties aren’t minified
  • EnsuredreThis isn’t used in Windows 8 applications
  • Made UMD more resistant to false positives
  • Optimized_.isArguments &_.isArray fallbacks

v2.0.0

Sept. 13, 2013DiffDocs

Compatibility Warnings
  • Aligned_.after with Underscore 1.5.0, making it always return a function
  • Made_.unzip an alias of_.zip
Notable Changes
  • Created lodash methods as npm packages & AMD/Node.js modules
  • Made_.chain force chaining for all methods
  • Moved the build utility tolodash-cli
  • Optimized_.contains,_.debounce,_.isArguments,_.throttle, &_.where
  • Optimized functions of_.bind,_.bindKey,_.curry,_.partial, &_.partialRight
  • Added_.curry,_.forEachRight,_.indexBy,_.findLast,_.findLastIndex,_.findLastKey,_.forInRight,_.forOwnRight,_.pull,_.remove, &_.sample
Other Changes
  • Added Curl & Dojo module loaders to the unit tests
  • Added themodularize build option
  • Added support for theiife command to be used without an%output% token
  • Added support for_.mixin to accept a destination object
  • Added support for_.range to accept astep of0
  • Ensured “Array” methods supportarguments objects
  • Ensured “Function” methods throw on non-functions
  • Ensured_.at works as a callback for_.map
  • Ensured_.createCallback works when noargCount is specified
  • Ensured_.first &_.last return arrays when given ann with a falseyarray
  • Ensured_.flatten works witharguments objects
  • Ensured minified files work with Dojo’s builder
  • Ensured_.zipObject skips falsey elements
  • Improved dead code removal from builds
  • Improved JSDoc syntax
  • Made_.eachRight an alias of_.forEachRight
  • Made_.memoize avoid prefixingcache keys when using aresolver function
  • Removed localclearTimeout &setTimeout variables from theunderscore build
  • Reduced the size of the repo & npm package
  • Simplified the bailout increateCache
  • Updated sourceURL & sourceMappingURL syntax
  • Updatedunderscore build compatibility to v1.5.2

v1.3.1

June 12, 2013DiffDocs

  • Added missingcache property to the objects returned bygetObject
  • EnsuredmaxWait unit tests pass in Ringo
  • Increased themaxPoolSize value
  • OptimizedreleaseArray &releaseObject

v1.3.0

June 11, 2013DiffDocs

  • Added_.transform
  • Added_.chain &_.findWhere aliases
  • Added internal array & object pooling
  • Added Istanbul test coverage reports to Travis CI
  • AddedmaxWait option to_.debounce
  • Added support for floating point numbers to_.random
  • Added Volo configuration to package.json
  • Adjusted UMD forcomponent build
  • Enabled more stable mixing oflodash &underscore build methods
  • Ensured debounced function withleading &trailing options works as expected
  • Ensured minified builds work with the Dojo builder
  • Ensured minification avoids deoptimizing expressions containing boolean values
  • Ensured support for--output paths containing build command keywords
  • Ensured unknown types returnfalse in_.isObject &_.isRegExp
  • Ensured_.clone,_.flatten, &_.uniq can be used as callback for_.map
  • Ensured_.forIn works on objects with longer inheritance chains in IE < 9
  • Ensured_.isPlainObject returnstrue for empty objects in IE < 9
  • Ensured_.max &_.min chain correctly
  • EnsuredclearTimeout use doesn’t cause errors in Titanium
  • Ensured that the--stdout build option doesn’t write to a file
  • Exposed memoized function’scache
  • FixedError.prototype iteration bugs
  • Fixed “scripts” paths in component.json
  • Made methods support customizing_.indexOf
  • Made the build track dependencies of private functions
  • Made thetemplate pre-compiler build option avoid escaping non-ascii characters
  • Made_.createCallback avoid binding functions if they don’t referencethis
  • Optimized the Closure Compiler minification process
  • Optimized the large array cache for_.difference,_.intersection, &_.uniq
  • Optimized internal_.flatten &_.indexOf use
  • Reduced_.unzip &_.zip
  • Removed special handling of arrays in_.assign &_.defaults

v1.2.1

Apr. 29, 2013DiffDocs

  • Added Component package support
  • Updated the build utility to work with changes in GitHub’s API
  • Ensured_.isPlainObject works with objects created byObject.create(null)
  • Ensured “isType” methods returnfalse for subclassed values
  • Ensured debounced functions, withleading &trailing calls enabled,only perform trailing calls after they’re called more than once

v1.2.0

Apr. 16, 2013DiffDocs

  • Added_.unzip
  • Added anoptions param to_.debounce &_.throttle
  • Enabled non-underscore builds to include_.findWhere &_.chain
  • Ensured “Array” & “Object” methods work witharguments objects & arrays respectively
  • Ensured build utility runs on Windows
  • Ensuredunderscore build versions of “isType” methods align with Underscore
  • Ensured methods avoid issues with the__proto__ property
  • Ensured_.isEqual uses acallback only if it’s a function
  • Ensured_.merge applies acallback to nested properties
  • Ensured_.merge provides the correctcallback arguments when comparing objects
  • Made lodash work with Browserify
  • Removed all method compilation from themodern build

v1.1.1

Mar. 27, 2013DiffDocs

  • Ensured theunderscore build of_.forEach accepts athisArg param
  • Updated vendor/tar to work with Node.js v0.10

v1.1.0

Mar. 26, 2013DiffDocs

  • Added_.createCallback,_.findIndex,_.findKey,_.parseInt, &_.runInContext
  • Added_.support
  • Addedcallback &thisArg params to_.flatten
  • Addedrhino -require support
  • Added CommonJS/Node.js support to precompiled templates
  • Ensured theexports object is not a DOM element
  • Ensured_.isPlainObject returnsfalse for objects without a[[Class]] of “Object”
  • Madecallback support in_.cloneDeep more closely follow its documentation
  • Made_.object an alias of_.zipObject
  • Made the template precompiler create missing directories of--output paths
  • Optimized method chaining, object iteration,_.find, &_.pluck
  • Updatedbackbone build method dependencies

v1.0.2

Feb. 18, 2013DiffDocs

  • Ensured_.isPlainObject works when built-inObject.getPrototypeOf is unavailable

v1.0.1

Feb. 18, 2013DiffDocs

  • Added support for specifying source map URLs in-p/--source-map options
  • Ensured the second argument to_.assign is not treated as acallback
  • Ensured-p/--source-map build options correctly set thesourceMappingURL
  • Made-p/--source-map set source map “sources” keys based on the build
  • Made_.defer usesetImmediate, in Node.js, when available
  • Made_.where search arrays for values regardless of their index position
  • Removed dead code from_.template

v1.0.0

Feb. 14, 2013DiffDocs

Compatibility Warnings
  • Made_.defaults preservenull values, instead of overwriting them
Changes
  • Added_.at &_.partialRight
  • Addedmodern &-p/--source-map build options
  • Added “imports” option to_.templateSettings
  • Added support for_.pluck &_.where callback shorthands
  • Ensured_.assign &_.defaults support arrays
  • Ensured_.merge assignsnull values & produces dense arrays
  • Deferred minifier downloads until thelodash utility requires them
  • FlippednoNodeClass test to avoid Firebug’s “break on all errors” feature
  • Made_.where support deep object comparisons
  • Optimized_.invert,_.pairs, &_.values
  • Reduced_.max,_.min,_.pluck,_.toArray, &_.where
  • Removed support for automatic with-statement removal from_.template
  • SimplifiedcreateIterator &iteratorTemplate
  • Tweaked_.uniqueId to avoid problems with buggy minifiers
  • Updatedunderscore build compatibility to v1.4.4
  • Addedcallback &thisArg params to_.assign,_.clone,_.cloneDeep,_.first,_.last,_.initial,_.isEqual,_.merge, &_.rest

v1.0.0-rc.3

Dec. 17, 2012DiffDocs

Compatibility Warnings
  • Made_#join,_#pop, &_#shift wrapper methods return unwrapped values
  • Made “Function” methods wrapper counterparts return wrapped values
  • Removed “chain” methods
Changes
  • Added_.cloneDeep
  • Added_.once to thebackbone build
  • Ensuredbackbone builds implement Underscore’s chaining behavior
  • Ensured thesettings=… build option doesn’t clobber the defaultmoduleId
  • Ensured lodash’s npm package works when packages aren’t globally installed
  • Made compiled templates exported for AMD use the lodash module for_
  • Removed the_.forEach dependency from_.intersection
  • Optimized_.isArray &_.isFunction fallbacks as well as_.intersection,_.isDate,_.isRegExp,_.reduce,_.reduceRight,_.union, &_.uniq

v1.0.0-rc.2

Dec. 5, 2012DiffDocs

  • Specified more method chaining behaviors
  • Updatedunderscore build compatibility to v1.4.3

v1.0.0-rc.1

Dec. 4, 2012DiffDocs

Compatibility Warnings
  • Added support forarguments objects to_.clone
  • Ensured_.clone creates plain object clones of non-plain objects
  • Made_(…) chain automatically without needing to call_#chain
  • Made_.isEqual equatearguments objects to similarObject objects
Changes
  • Ensure lodash runs in the JS engine embedded in Adobe products
  • Ensured_.reduce &_.reduceRight provide the correctcallback arguments
  • Ensured_.throttle nulls thetimeoutId
  • Made deep_.clone more closely follow the structured clone algorithm
  • Optimized compiled templates in Firefox
  • Optimized_.forEach,_.forOwn,_.isNumber, &_.isString
  • SimplifiediteratorTemplate

v0.10.0

Nov. 17, 2012DiffDocs

Compatibility Warnings
  • Renamed_.lateBind to_.bindKey
  • Made_.defaults &_.extend iterate only own properties ofsource objectsto align withObject.assign
Changes
  • Added the build commands used to custom build copyright/license headers
  • Added_.assign
  • Ensured theunderscore build of_.find returns the first match, not last
  • Ensured_.defaults,_.extends, &_.merge work with_.reduce
  • Made lodash’s npm package installation work with more system configurations
  • Made_.extend an alias of_.assign
  • Optimized_.contains,_.defaults,_.extend, &_.filter
  • Restricted_.where to iterate only own properties ofsource objects
  • Updatedbackbone build lodash method dependencies

v0.9.2

Nov. 9, 2012DiffDocs

  • AddedfromIndex param to_.contains
  • AddedmoduleId build option
  • Added Closure Compiler “simple” optimizations to the build process
  • Added support for strings in_.max &_.min
  • Added support for ES2015 template delimiters to_.template
  • Ensured re-minification of lodash by third parties avoids Closure Compiler bugs
  • Optimized_.every,_.find,_.some, &_.uniq

v0.9.1

Oct. 31, 2012DiffDocs

  • Ensured_.every returnsfalse as soon as thecallback result is falsey
  • Ensured_.isFinite returnsfalse for non-numeric values
  • Removed_.forEach chainability in theunderscore build
  • Simplified_.union

v0.9.0

Oct. 24, 2012DiffDocs

  • Added asourceURL option to_.template
  • Ensured_.where returns an empty array if given an emptyproperties object
  • Expanded_.isFinite to returntrue for numeric strings
  • Reduced_.intersection,_.omit,_.pick,_.sortedIndex, &_.where
  • Reduced the npm package size by only downloading minifiers for global installs
  • Reduced lodash’s file size
  • Improved source code comprehension by removing compilation from_.bindAll,_.contains,_.countBy,_.every,_.filter,_.find,_.functions,_.groupBy,_.invert,_.invoke,_.isEmpty,_.map,_.merge,_.omit,_.pairs,_.pick,_.pluck,_.reduce,_.reject,_.some,_.sortBy,_.values,_.where, & internalshimKeys

v0.8.2

Oct. 10, 2012DiffDocs

  • Ensured_.map returns an array when given a falsey collection
  • Ensured_.throttle clears its timeout whenfunc is called
  • Made_.max,_.min,_.shuffle support iterating objects
  • ReducedcreateIterator,_.clone,_.compact
  • Re-optimized_.max,_.min, &_.sortedIndex

v0.8.1

Oct. 4, 2012DiffDocs

  • Enabled deep clone support in theunderscore build whenclone is explicitly included
  • Reverted removal of first argument falsey checks from methods

v0.8.0

Oct. 1, 2012DiffDocs

Compatibility Warnings
  • Made_.random return0 or1 when no arguments are given
  • Moved late bind functionality from_.bind to_.lateBind
  • Removed first argument falsey checks from methods
  • Removed support for customclone,isEqual,toArray methods from_.clone,_.isEqual, &_.toArray
Changes
  • Added-d/--debug,-m/--minify,minus,plus,settings, &template build options
  • Added_.isPlainObject &_.lateBind
  • Enabled_.sortedIndex to accept a property name as thecallback param
  • Ensured methods accept athisArg ofnull
  • Fixed theiife build option to accept more values
  • Made_.times return an array ofcallback results
  • Simplified_.max,_.min, &_.reduceRight

v0.7.0

Sept. 11, 2012DiffDocs

Compatibility Warnings
  • Renamed_.zipObject to_.object
  • Replaced_.drop with_.omit
  • Made_.drop an alias of_.rest
Changes
  • Added_.invert,_.pairs, &_.random
  • Added_.result to thebackbone build
  • Addedexports,iife,-c/--stdout,-o/--output, &-s/--silent build options
  • EnsuredisPlainObject works with objects from other documents
  • Ensured_.isEqual compares values with circular references correctly
  • Ensured_.merge work with four or more arguments
  • Ensured_.sortBy performs a stable sort forundefined values
  • Ensured_.template works with “interpolate” delimiters containing ternary operators
  • Ensured the production build works in Node.js
  • Ensured template delimiters are tokenized correctly
  • Made pseudo private properties_chain &_wrapped double-underscored to avoid conflicts
  • Mademinify.js supportunderscore.js
  • Reduced the size ofmobile &underscore builds
  • Simplified_.isEqual &_.size

v0.6.1

Aug. 29, 2012DiffDocs

  • Ensured IE conditional compilation isn’t enabled by theuseSourceURL test
  • OptimizedisPlainObject

v0.6.0

Aug. 28, 2012DiffDocs

  • Addedcallback &thisArg params to_.drop &_.pick
  • AddedhasObjectSpliceBug test to avoiddelete operator use
  • Added_.unescape
  • Ensured_.reduce works with string objects in IE < 9
  • Made_.omit an alias of_.drop
  • Made compiled methods take advantage of engines with strict mode optimizations
  • Optimized_.intersection & removed its dependency on_.every
  • Reduced the file size of theunderscore build

v0.5.2

Aug. 21, 2012DiffDocs

  • Ensured_.isElement uses strict equality for its duck type check
  • Ensured_.isObject returns a boolean value
  • Ensured_.template & “Object” methods don’t error when given falsey values
  • Made_.template generate less unused code in compiled templates

v0.5.1

Aug. 18, 2012DiffDocs

  • Ensured_.bind correctly appends array arguments to partially appliedarguments in older browsers

v0.5.0

Aug. 17, 2012DiffDocs

  • Added_.countBy,_.drop,_.merge, &_.where
  • Addedcsp(Content Security Policy) &underscore build options
  • Added deep cloning support to_.clone
  • Added Jam package support
  • Added support for exiting early in_.forEach,_.forIn, &_.forOwn
  • Added support for jQuery/MooTools DOM query collections to_.isEmpty &_.size
  • Ensured development build works with IE conditional compilation enabled
  • Ensured_.clone doesn’t clonearguments objects, DOM nodes, functions, or non-plain objects
  • Ensured_.filter’scallback can’t modify result values
  • Ensured_.isEmpty,_.isEquals, &_.size supportarguments objects
  • Ensured_.isEqual doesn’t inspect DOM nodes, works with objects from other documents, & calls customisEqual methods before checking strict equality
  • Ensured_.once frees the given function for garbage collection
  • Ensured_.sortBy performs a stable sort
  • EnsuredreEvaluateDelimiter is used when_.templateSettings.evaluate isundefined
  • Made_.range coerce arguments to numbers
  • Optimized_.isFunction

v0.4.2

July 16, 2012DiffDocs

  • Addedstrict build option
  • Ensured_.bindAll,_.defaults, &_.extend avoid strict mode errors on read-only properties
  • Optimized the iteration of large arrays in_.difference,_.intersection, &_.without
  • Fixed build bugs related to removing variables

v0.4.1

July 11, 2012DiffDocs

  • Fixed_.template regression
  • Optimized build process to detect & remove more unused variables

v0.4.0

July 11, 2012DiffDocs

  • Addedbin &scripts entries to package.json
  • Addedlegacy build option
  • Added cross-browser support for strings to “Collection” methods
  • Added_.zipObject
  • Leveraged_.indexOf’sfromIndex in_.difference &_.without
  • Optimized compiled templates
  • Optimized inlining theiteratorTemplate for builds
  • Optimized object iteration for “Collection” methods
  • Optimized partially applied_.bind in V8
  • Made compiled templates more debuggable
  • Made_.size work with falsey values & consistent cross-browser witharguments objects
  • Moved_.groupBy &_.sortBy back to the “Collection” category
  • Removedarguments object from_.range

v0.3.2

June 14, 2012DiffDocs

  • Ensured_.escape returns an empty string for nullish values
  • EnsuredsourceURL support doesn’t cause errors in Adobe’s JS engine
  • Fixed regression in generating custom builds
  • Moved_.invoke &_.pluck back to the “Collection” category
  • Moved_.tap to the “Seq” category

v0.3.1

June 10, 2012DiffDocs

  • Addedbackbone build option
  • Ensured “Array” methods allow falseyarray params
  • Removed_.isArguments fallback from themobile build
  • Simplified_.pluck,_.values &_(...) method wrappers

v0.3.0

June 6, 2012DiffDocs

  • Added_.forIn &_.forOwn
  • Addedcategory build option
  • AddedfromIndex param to_.indexOf &_.lastIndexOf
  • Added//@ sourceURL support to_.template
  • AddedthisArg param to_.sortedIndex &_.uniq
  • Ensured array-like objects with invalidlength properties are treated like regular objects
  • Ensured_.sortedIndex supports arrays with highlength values
  • Fixedprototype iteration bug in_.keys
  • Optimized_.times &this bindings in iterator methods

v0.2.2

May 30, 2012DiffDocs

  • Addedmobile build option
  • Ensured_.find returnsundefined for unmatched values
  • Ensured_.templateSettings.variable is compatible with Underscore
  • Optimized_.escape
  • Reduced dependencies of_.find

v0.2.1

May 24, 2012DiffDocs

  • Adjusted the lodash export order for r.js
  • Ensured_.groupBy values are added to own, not inherited, properties
  • Made_.bind follow ES5 spec to support a popular Backbone.js pattern
  • Removed the alias_.intersect
  • Simplified_.bind,_.flatten,_.groupBy,_.max, &_.min

v0.2.0

May 21, 2012DiffDocs

  • Added_.partial
  • AddedthisArg param to_.groupBy
  • Added “lazy bind” support to_.bind
  • Added custom build options
  • Added default_.templateSettings.variable value
  • Added native method overwrite detection to avoid bad native shims
  • Added support for more AMD build optimizers & aliasing as the “underscore” module
  • Added whitespace to compiled strings
  • Commented theiterationFactory options object
  • Ensured_(...) returns given wrapper instances
  • Ensured_.max &_.min support extremely large arrays
  • Ensured_.throttle works in tight loops
  • FixedclearTimeout typo
  • Fixed[DontEnum] bug in IE < 9
  • Fixedprototype iteration bug in Firefox < 3.6, Opera < 11.60, & Safari < 5.1
  • Inlined_.isFunction calls
  • Made_.debounce’ed functions match_.throttle’ed functions’ return value behavior
  • Made_.escape no longer translate the “>” character
  • Simplified all “Array” methods
  • Optimized_.debounce,_.escape,_.flatten,_.forEach,_.groupBy,_.intersection,_.invoke,_.isObject,_.max,_.min,_.pick,_.shuffle,_.sortedIndex,_.template,_.throttle,_.union,_.uniq

v0.1.0

Apr. 23, 2012Docs

  • Initial release

Maintained by thecore team with help fromour contributors.

Clone this wiki locally


[8]ページ先頭

©2009-2025 Movatter.jp