diff --git a/.internal/compareAscending.js b/.internal/compareAscending.js index 07e63b733..47037e0bb 100644 --- a/.internal/compareAscending.js +++ b/.internal/compareAscending.js @@ -20,21 +20,18 @@ function compareAscending(value, other) { const othIsReflexive = other === other const othIsSymbol = isSymbol(other) - let val = 0 - if (typeof value == 'string') { - val = value.localeCompare(other,'zh') - } else { - val = value - other - } + const val = typeof value == 'string' + ? value.localeCompare(other) + : -other - if ((!othIsNull && !othIsSymbol && !valIsSymbol && val>0) || + if ((!othIsNull && !othIsSymbol && !valIsSymbol && val > 0) || (valIsSymbol && othIsDefined && othIsReflexive && !othIsNull && !othIsSymbol) || (valIsNull && othIsDefined && othIsReflexive) || (!valIsDefined && othIsReflexive) || !valIsReflexive) { return 1 } - if ((!valIsNull && !valIsSymbol && !othIsSymbol && val<0) || + if ((!valIsNull && !valIsSymbol && !othIsSymbol && val < 0) || (othIsSymbol && valIsDefined && valIsReflexive && !valIsNull && !valIsSymbol) || (othIsNull && valIsDefined && valIsReflexive) || (!othIsDefined && valIsReflexive) ||