Ensure _.sortBy moves symbols to the end.

This commit is contained in:
John-David Dalton
2016-04-21 00:36:50 -07:00
parent 076e4e6db5
commit 3c144b8601
2 changed files with 23 additions and 17 deletions

View File

@@ -4062,27 +4062,27 @@
*/
function compareAscending(value, other) {
if (value !== other) {
var valIsNull = value === null,
valIsUndef = value === undefined,
var valIsDefined = value !== undefined,
valIsNull = value === null,
valIsReflexive = value === value,
valIsSymbol = isSymbol(value);
var othIsNull = other === null,
othIsUndef = other === undefined,
var othIsDefined = other !== undefined,
othIsNull = other === null,
othIsReflexive = other === other,
othIsSymbol = isSymbol(other);
if ((valIsSymbol && !othIsSymbol) ||
(!othIsNull && !othIsSymbol && value > other) ||
(valIsNull && !othIsUndef && othIsReflexive) ||
(valIsUndef && othIsReflexive) ||
if ((!othIsNull && !othIsSymbol && !valIsSymbol && value > other) ||
(valIsSymbol && othIsDefined && othIsReflexive && !othIsNull && !othIsSymbol) ||
(valIsNull && othIsDefined && othIsReflexive) ||
(!valIsDefined && othIsReflexive) ||
!valIsReflexive) {
return 1;
}
if ((othIsSymbol && !valIsSymbol) ||
(!valIsNull && !valIsSymbol && value < other) ||
(othIsNull && !valIsUndef && valIsReflexive) ||
(othIsUndef && valIsReflexive) ||
if ((!valIsNull && !valIsSymbol && !othIsSymbol && value < other) ||
(othIsSymbol && valIsDefined && valIsReflexive && !valIsNull && !valIsSymbol) ||
(othIsNull && valIsDefined && valIsReflexive) ||
(!othIsDefined && valIsReflexive) ||
!othIsReflexive) {
return -1;
}