You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							51 lines
						
					
					
						
							1.4 KiB
						
					
					
				
			
		
		
	
	
							51 lines
						
					
					
						
							1.4 KiB
						
					
					
				var parse = require('../parse/index.js') | 
						|
 | 
						|
/** | 
						|
 * @category Common Helpers | 
						|
 * @summary Compare the two dates reverse chronologically and return -1, 0 or 1. | 
						|
 * | 
						|
 * @description | 
						|
 * Compare the two dates and return -1 if the first date is after the second, | 
						|
 * 1 if the first date is before the second or 0 if dates are equal. | 
						|
 * | 
						|
 * @param {Date|String|Number} dateLeft - the first date to compare | 
						|
 * @param {Date|String|Number} dateRight - the second date to compare | 
						|
 * @returns {Number} the result of the comparison | 
						|
 * | 
						|
 * @example | 
						|
 * // Compare 11 February 1987 and 10 July 1989 reverse chronologically: | 
						|
 * var result = compareDesc( | 
						|
 *   new Date(1987, 1, 11), | 
						|
 *   new Date(1989, 6, 10) | 
						|
 * ) | 
						|
 * //=> 1 | 
						|
 * | 
						|
 * @example | 
						|
 * // Sort the array of dates in reverse chronological order: | 
						|
 * var result = [ | 
						|
 *   new Date(1995, 6, 2), | 
						|
 *   new Date(1987, 1, 11), | 
						|
 *   new Date(1989, 6, 10) | 
						|
 * ].sort(compareDesc) | 
						|
 * //=> [ | 
						|
 * //   Sun Jul 02 1995 00:00:00, | 
						|
 * //   Mon Jul 10 1989 00:00:00, | 
						|
 * //   Wed Feb 11 1987 00:00:00 | 
						|
 * // ] | 
						|
 */ | 
						|
function compareDesc (dirtyDateLeft, dirtyDateRight) { | 
						|
  var dateLeft = parse(dirtyDateLeft) | 
						|
  var timeLeft = dateLeft.getTime() | 
						|
  var dateRight = parse(dirtyDateRight) | 
						|
  var timeRight = dateRight.getTime() | 
						|
 | 
						|
  if (timeLeft > timeRight) { | 
						|
    return -1 | 
						|
  } else if (timeLeft < timeRight) { | 
						|
    return 1 | 
						|
  } else { | 
						|
    return 0 | 
						|
  } | 
						|
} | 
						|
 | 
						|
module.exports = compareDesc
 | 
						|
 |