If you are using MomentJS , which I highly recommend for Javascript material, you can do this:
var percentOfDayRangeComplete = function(start, end) { var now = moment(); start = start || moment(now).startOf('day'); end = end || moment(now).endOf('day'); var totalMillisInRange = end.valueOf() - start.valueOf(); var elapsedMillis = now.valueOf() - start.valueOf();
jsFiddle to see it in action ...
source share