2013-09-23 5 views
0

Я хочу сделать код Javascript, чтобы найти все дни до текущей даты.Javascript, как создать массив дат?

Вот то, что я до сих пор:

var titleArray = [ 
"title1", 
"title2", 
]; 

var pictureArray = today.toString(); 
var thumbArray = today.toString(); 

var today = new Date(); 
var dd = today.getDate(); 
var mm = today.getMonth()+1; //January is 0! 
var yyyy = today.getFullYear(); 

if(dd<10) { 
    dd='0'+dd 
} 

if(mm<10) { 
    mm='0'+mm 
} 

today = yyyy+'_'+mm+'_'+dd; 

$.each(titleArray, function(i, val) { 
    $(".dailySection").append('<a href="images/daily/'+pictureArray+'.jpg" title="'+val+'"><img src="images/thumbs/'+thumbArray+'.jpg"></a>'); 
}); 

Как создать массив дат в JavaScript?

ответ

1

Создайте массив, затем используйте push(). Вы также должны помнить, что вы не можете ссылаться на today, прежде чем он будет создан, поэтому pictureArray и thumbArray необходимо переместить. Кроме того, если вы не планируете делать что-то большее, чем каждый из них держится за одну и ту же переменную, я предлагаю избавиться от них.

Кроме того, я считаю, что today уже должен быть строкой к моменту звонка toString().

var titleArray = [ 
    //a bunch of already-made and validated date strings 
]; 

var myArray = []; 

var today = new Date(); //it's a date! 
var dd = today.getDate(); 
var mm = today.getMonth()+1; //January is 0! 
var yyyy = today.getFullYear(); 

if(dd<10){ 
    dd='0'+dd; 
} 

if(mm<10){ 
    mm='0'+mm; 
} 

today = yyyy+'_'+mm+'_'+dd; //now it's a string 

/* 
Unnecessary? Just use titleArray[i] 
var pictureArray = today; 
var thumbArray = today; 
*/ 

titleArray.push(today); 

$.each(titleArray, function(i, val){ 
    $(".dailySection").append('<a href="images/daily/'+val+'.jpg" title="'+val+'"><img src="images/thumbs/'+val+'.jpg"></a>'); 
}); 
Смежные вопросы