[英]set a year range in javascript
如何在不指定javascript中每个选项的情况下定义数组范围?
现在我有这个:
var year = {
'0': '2000',
'1': '2001',
'2': '2002',
'3': '2003',
'4': '2004',
'5': '2005',
'6': '2006',
'7': '2007',
'8': '2008',
'9': '2009'
};
您说过要一个数组,但是示例中有一个普通的旧对象。 但是,从您对这个答案的评论看来,您确实确实想要一个普通的对象,所以这就是我要使用的对象。
无论如何,您可以通过循环执行此操作:
var year = {}; //or use [] if you want an array
var min_year = 2000;
var max_year = 2009;
for(var i = 0; i <= max_year - min_year; i++) {
year[i] = i + min_year;
}
alert(year[5]); //2005
您可以根据需要扩展此示例。
您不必使用循环来解决问题
var startYr = 2000;
var year = function(i){
return i + startYr;
};
// usage
year(0);
// output
2000
您的代码示例和问题完全不同:
这被认为是一个对象
var variable = {};
而这被认为是一个数组
var variable = [];
它们之间有细微差别。 有关该主题的更多信息,您可以检查数组和对象之间的区别是什么?
因此,如果您实际上需要一个javascript数组,则此代码可以完成工作:
function generate_year_range(start, end){
var years = [];
for(var year = start; year <= end; year++){
years.push(year)
}
return years;
}
var my_years = generate_year_range(2000,2009);
这将产生从2000年到2009年(包括)的年份,并将它们存储到一个数组中。 因此,您的my_years
变量将保持[2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009]
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.