utils/diff
module
Type Definitions
-
module:utils/diff~DiffResult
Functions
-
diff( a, b, [ cmp ] ) → Array<DiffResult>
module:utils/diff~diff
Calculates the difference between two arrays or strings producing an array containing a list of changes necessary to transform input into output.
diff( 'aba', 'acca' ); // [ 'equal', 'insert', 'insert', 'delete', 'equal' ]
This function is based on the "O(NP) Sequence Comparison Algorithm" by Sun Wu, Udi Manber, Gene Myers, Webb Miller. Unfortunately, while it gives the most precise results, its to complex for longer strings/arrow (above 200 items). Therefore,
diff()
automatically switches tofastDiff()
when detecting such a scenario. The return formats of both functions are identical.Type parameters
T
Parameters
a : ArrayLike<T>
Input array or string.
b : ArrayLike<T>
Output array or string.
[ cmp ] : ( a: T, b: T ) => boolean
Optional function used to compare array values, by default === is used.
Returns
Array<DiffResult>
Array of changes.