Javascript 将月号转换为名称
我需要更改从数据库检索到的月号,并将其转换为月份名称。月数被放入一个数组中,作为数组世界的新手,我不确定替换的最佳方法是什么Javascript 将月号转换为名称,javascript,date,Javascript,Date,我需要更改从数据库检索到的月号,并将其转换为月份名称。月数被放入一个数组中,作为数组世界的新手,我不确定替换的最佳方法是什么 您应该使用数据[i].Month(-1如果数据[i].Month从1到12)作为monthNames数组的索引 替换此项: month.push(data[i].Month); 作者: 您应该使用数据[i].Month(-1如果数据[i].Month从1到12)作为monthNames数组的索引 替换此项: month.push(data[i].Month); 作者
您应该使用
数据[i].Month
(-1如果数据[i].Month
从1到12)作为monthNames
数组的索引
替换此项:
month.push(data[i].Month);
作者:
您应该使用
数据[i].Month
(-1如果数据[i].Month
从1到12)作为monthNames
数组的索引
替换此项:
month.push(data[i].Month);
作者:
创建对象数组的方法最有意义,尤其是当您认为可能需要短月份和长月份名称时: var monthNames=[{longName:“一月”,shortName:“一月”},{longName:“十二月”,shortName:“十二月”}] 为了便于输出,您可以将月份查找为,比如,
monthNames[i].longName
否则,字符串数组也可以工作
通常,月份从0到11。。。如果运行1到12,您可能需要调整1。创建对象数组的方法最有意义,特别是如果您认为您可能需要长短月份名称: var monthNames=[{longName:“一月”,shortName:“一月”},{longName:“十二月”,shortName:“十二月”}] 为了便于输出,您可以将月份查找为,比如,
monthNames[i].longName
否则,字符串数组也可以工作
通常,月份从0到11。。。如果运行1到12,您可能需要调整1。您编写了一个for循环来迭代数据数组中的对象,这是正确的,但是要获得月份名称,您不能只为原始数据数组编制索引。原始数据数组不包含月份名称。您必须对monthNames数组进行如下索引:
for(var i in data) {
month.push(monthNames[data[i].Month - 1]);
}
使用数组方法和函数的替代解决方案更简洁
data.map((x) => month.push(monthNames[x.Month - 1]));
您编写了一个for循环来迭代数据数组中的对象,这是正确的,但是要获得月份名称,您不能只对原始数据数组进行索引。原始数据数组不包含月份名称。您必须对monthNames数组进行如下索引:
for(var i in data) {
month.push(monthNames[data[i].Month - 1]);
}
使用数组方法和函数的替代解决方案更简洁
data.map((x) => month.push(monthNames[x.Month - 1]));
如果这是您的代码,您可以很容易地使用:
month.push(monthNames[(int)data[i].month-1])代码>而不是此行:month.push(数据[i].month)代码>如果这是您的代码,您可以很容易地使用:month.push(monthNames[(int)data[i].month-1])代码>而不是此行:month.push(数据[i].month)代码>成功了,谢谢,但是你能解释一下为什么需要“-1”吗?那是因为data[i]。Month
返回一个从1到12的数字,但是monthNames
数组的索引从0到11。这意味着,如果data[i].Month
是1(对于一月),我们需要获取数组的第一个元素(索引0)。这是有效的,但您能否解释为什么需要“-1”呢?这是因为data[i]。Month
返回一个从1到12的数字,但是monthNames
数组的索引是从0到11。这意味着如果data[i].Month
是1(对于一月),我们需要获取数组的第一个元素(索引0)。啊,那么这就是'-1'的作用?我会考虑做短名称,LangNew看到,因为有更多的变量我需要包括在我所做的图表中。我会考虑做短名称,LangNew看到,因为有更多的变量我需要包括在我所做的图表中。