[英]How can I add numbers to array simply using unshift()?
如何使用'unshift()'將數字倒置添加到數組中?
我想得到一個數組= {2018,2017,2016,2015,...,1999}。 因為“ 2018”是今年,“ 1999”是我喜歡的歌手的處子秀。 這就是為什么我從“ 1999”開始,它是array [0]。
這是我使用'push()'的代碼。 我認為這太長太愚蠢了。 我相信有些事情我無法提出。 謝謝。
<script>
var years = [1999];
var i = 0;
var n = new Date().getFullYear() - years[i] + 1;
while(i < n){
years.push(years[i]+1);
i++;
}
i=1;
years.reverse();
while(i < years.length){
document.write('<li><a href='+years[i]+'.html>'+years[i]+'</a></li>');
i++;
}
</script>
像這樣嗎
var years = [1999]; var i = 0; var n = new Date().getFullYear() - years[i]; while (i < n) { years.unshift(years[0]+1); i++; } console.log(years);
這樣可以根據需要使用unshift()
將明年添加到數組的開頭。 這消除了像您那樣反轉陣列的需要。
這里值得注意的是,我們總是取消Years years[0]+1
的值,因為數組反轉了,使得最大的數字始終位於索引0。
您為什么甚至需要一個數組?
var currentYear = new Date().getFullYear(); for (var year = currentYear; year >= 1999; year--){ document.write('<li><a href='+year+'.html>'+year+'</a></li>'); }
如果我修改代碼以生成years
的陣列。 最初的年份應該是這樣的,即首次亮相
this.years = function(debutYear) { var currentYear = new Date().getFullYear(), years = []; while ( debutYear <= currentYear ) { years.push(debutYear++); } return years.reverse(); } console.log(years(1999));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.