【发布时间】:2013-05-12 12:42:31
【问题描述】:
我有一个for 循环来遍历数组并显示日期。我编写了一些代码来将月份从数字转换为文本。代码如下所示:
for (var i=0; i < arrayLength; i++) {
//==== MONTH DATA
var month = data[1];
//==== DECLARE MONTH
if (month == '01') { var month = "Jan" }
if (month == '02') { var month = "Feb" }
if (month == '03') { var month = "Mar" }
if (month == '04') { var month = "Apr" }
if (month == '05') { var month = "May" }
if (month == '06') { var month = "June" }
if (month == '07') { var month = "July" }
if (month == '08') { var month = "Aug" }
if (month == '09') { var month = "Sept" }
if (month == '10') { var month = "Oct" }
if (month == '11') { var month = "Nov" }
if (month == '12') { var month = "Dec" }
alert(month);
}
现在我想在整个网站的各种 for 循环中使用月份转换器。所以我想做一些事情,比如把它放在一个我每次都可以触发的函数中。例如:
function declareMonth(){
//==== DECLARE MONTH
if (month == '01') { var month = "Jan" }
if (month == '02') { var month = "Feb" }
if (month == '03') { var month = "Mar" }
if (month == '04') { var month = "Apr" }
if (month == '05') { var month = "May" }
if (month == '06') { var month = "June" }
if (month == '07') { var month = "July" }
if (month == '08') { var month = "Aug" }
if (month == '09') { var month = "Sept" }
if (month == '10') { var month = "Oct" }
if (month == '11') { var month = "Nov" }
if (month == '12') { var month = "Dec" }
}
for (var i=0; i < arrayLength; i++) {
//==== MONTH DATA
var month = data[1];
declareMonth();
alert(month);
}
但这不起作用。谁能解释一下这是怎么做到的?
【问题讨论】:
-
您对使用
var有点过度热情。无需在执行这些分配的所有if语句中包含var。 -
@nnnnnn 并不是说他应该做 12 个单独的任务......
-
不,@Alnitak,显然你的回答是一个更好的方法。不过,OP 的另一点是,关于您的声明 "I have a jQuery for loop" -您错了,因为您的问题中没有任何 jQuery。你所拥有的是一个普通的 JavaScript for 循环。
-
@coop 这与 jQuery 无关。这是一个普通的 javascript
for循环。 -
是的,好点。谢谢你的建议,我会尽量减少它。你对 javascript/jQuery 的看法是对的!
标签: javascript function loops for-loop