Comment soustraire 2 fois avec moment.js, puis de soustraire quelques minutes

J'ai besoin de soustraire 2 fois avec moment.js (obtenez la différence), et puis avec ce résultat, les soustraire quelques minutes supplémentaires (simple int). C'est pour le calcul des feuilles de temps. Quelques exemples:

Example #1:
Start time: 10:00 AM (represented in js as "10:00")
End time: 2:00 PM (represented in js as "14:00")
Lunch: 30 minutes ("30")
Expected result: "3:30" (10am - 2pm is 4 hours, minus 30 minutes for lunch = 3hrs 30 mins -- and I need it output as "3:30")

Example #2:
Start time: 6:15 AM (represented in js as "6:15")
End time: 4:45 PM (represented in js as "16:45")
Lunch: 0 minutes ("0")
Expected result: "10:30"

Je sais moment.js peut le faire, mais j'ai du mal à obtenir les résultats attendus. J'ai essayé ceci:

function getTimeInterval(startTime, endTime){
        return moment(moment(startTime,"hh:mm").diff(moment(endTime,"hh:mm"))).format("hh:mm"); 
}

La mise en forme me semble bon, mais j'obtiens des valeurs incorrectes. Par exemple, le résultat retourné pour mon exemple #2 est de "6:30" au lieu de "10:30" Et puis, comment puis-je soustraire off int minutes pour le déjeuner?

Toute aide est très appréciée.

OriginalL'auteur HerrimanCoder | 2015-12-13