mirror of
https://github.com/whoisclebs/lodash.git
synced 2026-02-01 07:47:49 +00:00
Fix InDesign bug with _.sortBy.
Former-commit-id: 3ed2c5fcb02885a9b3563cf9081f6e2af8826c6d
This commit is contained in:
@@ -256,7 +256,11 @@
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
return ai < bi ? -1 : 1;
|
||||
// The JS engine embedded in Adobe applications like InDesign has a buggy
|
||||
// `Array#sort` implementation that causes it, under certain circumstances,
|
||||
// to return the same value for `a` and `b`.
|
||||
// See https://github.com/jashkenas/underscore/pull/1247
|
||||
return ai < bi ? -1 : (ai > bi ? 1 : 0);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
14
test/test.js
14
test/test.js
@@ -3151,6 +3151,20 @@
|
||||
QUnit.module('lodash.sortBy');
|
||||
|
||||
(function() {
|
||||
test('should sort in ascending order', function() {
|
||||
var actual = _.pluck(_.sortBy([
|
||||
{ 'num': 991 },
|
||||
{ 'num': 212 },
|
||||
{ 'num': 11 },
|
||||
{ 'num': 16 },
|
||||
{ 'num': 74 },
|
||||
{ 'num': 0 },
|
||||
{ 'num': 1515 }
|
||||
], 'num'), 'num');
|
||||
|
||||
deepEqual(actual, [0, 11, 16, 74, 212, 991, 1515]);
|
||||
});
|
||||
|
||||
test('should perform a stable sort (test in IE > 8, Opera, and V8)', function() {
|
||||
function Pair(x, y) {
|
||||
this.x = x;
|
||||
|
||||
Reference in New Issue
Block a user