BeLakor
27-07-2009, 11:11
Ciao a tutti.
Devo implementare in JS una funzione con 2 parametri:
- ora 1, char 5 (hh:mm)
- ora 2, char 5 (hh:mm)
e devo trovare la differenza tra questi due char.
Esempio 1 (ora 1 > ora 2):
ora 1 = 08:45
ora 2 = 05:30
res = 03:15
Esempio 2 (ora 1 < ora 2):
ora 1 = 08:45
ora 2 = 09:30
res = + 00:45
Per ora utilizzavo questa funzione per fare la differenza tra i due char hh:mm, ma ora, siccome devo inserire anche un "+" nel caso in cui ora 1 < ora 2, dovrei appunto testare quale delle due ore è maggiore.
function GetHourDiff(pStartHour, pEndHour) {
var res = "";
var aTmp="";
//Trasformo l'orario di inizio in minuti
aTmp=pStartHour.split(":");
var nStartMin = (Number(aTmp[0]) * 60) + Number(aTmp[1]);
//Trasformo l'orario di fine in minuti
aTmp=pEndHour.split(":");
var nEndMin = (Number(aTmp[0]) * 60) + Number(aTmp[1]);
//Calcolo la differenza
var nDiff = 0;
if (nStartMin > nEndMin) {
nDiff = nStartMin - nEndMin;
} else {
nDiff = nEndMin - nStartMin;
}
//Formatto la stringa di uscita
var nDiffMin = 0;
var nDiffHour = 0;
if (nDiff > 59) {
nDiffMin = nDiff % 60;
nDiffHour = (nDiff - nDiffMin) / 60;
} else {
nDiffMin = nDiff;
}
if (nDiffHour < 10) res += "0";
res += nDiffHour;
res += ":";
if (nDiffMin < 10) res += "0";
res += nDiffMin;
return res;
}
Grazie in anticipo a tutti, se mi sono spiegato male chiedete pure.
BeLakor
Devo implementare in JS una funzione con 2 parametri:
- ora 1, char 5 (hh:mm)
- ora 2, char 5 (hh:mm)
e devo trovare la differenza tra questi due char.
Esempio 1 (ora 1 > ora 2):
ora 1 = 08:45
ora 2 = 05:30
res = 03:15
Esempio 2 (ora 1 < ora 2):
ora 1 = 08:45
ora 2 = 09:30
res = + 00:45
Per ora utilizzavo questa funzione per fare la differenza tra i due char hh:mm, ma ora, siccome devo inserire anche un "+" nel caso in cui ora 1 < ora 2, dovrei appunto testare quale delle due ore è maggiore.
function GetHourDiff(pStartHour, pEndHour) {
var res = "";
var aTmp="";
//Trasformo l'orario di inizio in minuti
aTmp=pStartHour.split(":");
var nStartMin = (Number(aTmp[0]) * 60) + Number(aTmp[1]);
//Trasformo l'orario di fine in minuti
aTmp=pEndHour.split(":");
var nEndMin = (Number(aTmp[0]) * 60) + Number(aTmp[1]);
//Calcolo la differenza
var nDiff = 0;
if (nStartMin > nEndMin) {
nDiff = nStartMin - nEndMin;
} else {
nDiff = nEndMin - nStartMin;
}
//Formatto la stringa di uscita
var nDiffMin = 0;
var nDiffHour = 0;
if (nDiff > 59) {
nDiffMin = nDiff % 60;
nDiffHour = (nDiff - nDiffMin) / 60;
} else {
nDiffMin = nDiff;
}
if (nDiffHour < 10) res += "0";
res += nDiffHour;
res += ":";
if (nDiffMin < 10) res += "0";
res += nDiffMin;
return res;
}
Grazie in anticipo a tutti, se mi sono spiegato male chiedete pure.
BeLakor