Javascript: obtenir le lundi et le dimanche de la semaine précédente

J'utilise le script suivant pour obtenir le lundi (le premier) et le dimanche (le dernier) de la semaine précédente:

var curr = new Date; //get current date
var first = curr.getDate() - curr.getDay() - 6; //Gets day of the month (e.g. 21) - the day of the week (e.g. wednesday = 3) = Sunday (18th) - 6
var last = first + 6; //last day is the first day + 6
var startDate = new Date(curr.setDate(first));
var endDate = new Date(curr.setDate(last));

Cela fonctionne bien si le lundi et le dimanche étaient aussi dans le même mois, mais je viens de remarquer aujourd'hui que cela ne fonctionne pas si, aujourd'hui, décembre et lundi dernier, c'était au mois de novembre.

Je suis un total JS novice, est-il une autre façon d'obtenir ces dates?

OriginalL'auteur user18577 | 2012-12-03