date error for date class google appscript
===

The problem that i am having here is that when i minus back to then end of the month, instead of going back to the 29 or 28 of last month the program starts to minus months instead of days. Bellow is my full code and below that is the output it produces in the google spread sheet. 

    function trying(){ 
      
      var date = new Date(); 
      var datechange = new Date();
      var array = new Array(7);
     
     for (var i = 0; i < 7; i++) {
        array[i] = new Array(0);
      }
      
      for ( var i = 0; i < 7; i++){ 
       days = i + 8
       datechange.setDate(date.getDate() - days);
       var tabName = Utilities.formatDate(datechange, 'MST', 'yyyy-MM-dd').toString(); 
           array[i][0] = tabName;
        }
    
      var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Want");
      sheet.getRange("B2:B8").setValues(array); 
    
    
    
    }

This are the dates that are produced. 

05/07/2012
04/07/2012
03/07/2012
02/07/2012
01/07/2012
30/06/2012
30/05/2012
