Skip to content

Instantly share code, notes, and snippets.

@scryptonite
Created December 30, 2011 05:39
Show Gist options
  • Save scryptonite/1538099 to your computer and use it in GitHub Desktop.
Save scryptonite/1538099 to your computer and use it in GitHub Desktop.
parseTime
function parseTime(time){
time = time.split(/(\,([ ]*and[ ]*)?|\;)/g);
var ms = 0;
for(var i = 0; i < time.length; i++){
var measure = time[i].trim();
switch(true){
case measure.search(/years?$/)>=0: ms+=parseFloat(measure, 10)*1000*60*60*24*365; break;
case measure.search(/months?$/)>=0: ms+=parseFloat(measure, 10)*1000*60*60*24*30; break;
case measure.search(/weeks?$/)>=0: ms+=parseFloat(measure, 10)*1000*60*60*24*7; break;
case measure.search(/days?$/)>=0: ms+=parseFloat(measure, 10)*1000*60*60*24; break;
case measure.search(/hours?$/)>=0: ms+=parseFloat(measure, 10)*1000*60*60; break;
case measure.search(/minutes?$/)>=0: ms+=parseFloat(measure, 10)*1000*60; break;
case measure.search(/seconds?$/)>=0: ms+=parseFloat(measure, 10)*1000; break;
case measure.search(/milliseconds?$/)>=0: ms+=parseFloat(measure, 10)*1; break;
}
}
return ms;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment