所以我正在做一个免费的在线javascript课程。我正在上课2.它专注于数组,对象和事件。我在测验中做得很好,但不知道怎么做分配。这是作业。
创建一个包含“January”到“December”的数组 创建一个名为GetMonthName的函数,该函数将单个数字作为参数并返回该月份的名称。例如:
得到月(3); //将返回Month
请记住,数组从0开始编制索引。 但在这里,第1个月应该是1月。 因此,您必须以某种方式解释这一点。
所以这是我的代码。我在正确的轨道上吗?任何帮助将不胜感激。
//create array
var months = ["Month","January","February","March","April","May","June","July","August","September","October","November","December"];
//create function
function getMonthName(month) {
for(i=0;i<=12;i++) {
var getMonth=months[i];
return getMonth;
}
}
//call function
getMonthName(getMonth);
答案 0 :(得分:1)
你不想在这里使用循环,因为你只回来一个月。你可能想要这样的东西:
function getMonthName(month) {
var getMonth=months[month];
return getMonth;
}
或更简单:
function getMonthName(month) {
return months[month];
}
要处理0索引,您还可以删除&#39;月&#39;从你的数组中,只需修改你的索引:
function getMonthName(month) {
return months[month-1];
}
答案 1 :(得分:1)
您不需要使用for循环,只需返回值
return months[i - 1];
答案 2 :(得分:1)
数组中不需要“月”。尝试做这样的事情
//create array
var months = ["January","February","March","April","May","June","July","August","September","October","November","December"];
//create function
function getMonthName(month) {
return months[month-1]
}
这样,除了月份名称
之外,您不必向数组添加任何内容答案 3 :(得分:0)
你在没有任何条件的情况下从循环返回,所以你总是会返回数组中的第一个元素并停止循环。
如果在使用循环时进行某种练习,那么只应在满足条件时返回,例如
function getMonthName(month) {
for(i=0;i<=12;i++) {
var getMonth=months[i];
if( i == month ){
return getMonth;
}
}
}
但是如果你真的想通过索引从数组中获得一个月的时间,并将它从1开始getMonthName(1) == "January"
那么:
var months = ["January","February","March","April","May","June","July","August","September","October","November","December"];
function getMonthName(month) {
return months[ month + 1 ];
}
答案 4 :(得分:0)
让我们看看你可以做些什么:
//create array
var months = ["Month","January","February","March","April","May","June","July","August","September","October","November","December"];
首先在函数中我确保我的参数是整数然后我检查传递的数字是否在1到12之间,最后我根据传递的数字减去一个返回所选月份。
//create function
function getMonthName(month) {
month = (parseInt(month) || 0) -1;
return month>0 && month<13 ? months[month] : null;
}
//call function
getMonthName(1);
答案 5 :(得分:0)
<div id="month"></div>
&#13;
new MarkerOptions().icon(myIcon)
&#13;