web-dev-qa-db-ja.com

Javascript-数値を月名に変換します

私は非常に単純な問題を抱えていますが、何らかの理由でその答えを見つけることができません。

label.forEach(function(value){
    months.Push(value['month']);
    revenue.Push(value['revenue']);
});

labelは数値と収益の配列です。私の場合、これは

[
{month: 9, revenue: 400}, 
{month: 11, revenue: 500},
{month: 12, revenue: 600}
]

これはJavaScriptのforEachループで、収益と月数を2つの別々の配列にプッシュします。問題は、月が数字(例:12)であるということですが、.Push()で月名をプッシュする(12月) 、何も見つからないようですので、ここにいる誰かが助けてくれるといいのですが。

7
peaceduck
var months = [ "January", "February", "March", "April", "May", "June", 
           "July", "August", "September", "October", "November", "December" ];

var selectedMonthName = months[value['month']];

リンクを見てください

スタック1

8
Oğuzhan

これは、moment.jsを使用して簡単に行うことができます。

var months = [];
months.Push(moment().month(0).format("MMMM"));
console.log(months);
<script src="https://momentjs.com/downloads/moment.min.js"></script>
1
Dineth Cooray

以下を試すことができます。

var label = [{month: 9, revenue: 400}, 
            {month: 11, revenue: 500},
            {month: 12, revenue: 600}]

var months = [];
var revenue = [];
var m = [ "January", "February", "March", "April", "May", "June", 
           "July", "August", "September", "October", "November", "December" ];

label.forEach(function(value){
    var monthName = m[value.month - 1];
    months.Push(monthName);
    revenue.Push(value.revenue);
});

console.log('Months Array: ', months);
console.log('Revenue Array:', revenue);
0
Mamun