0

私は JS を初めて使用するので、簡単な質問がありました。以下のコードで月名 (この場合は 12 月) を返すにはどうすればよいですか?

ありがとうございました。

window.onload = function() {
    var monthName = getMonth(12);   
    document.getElementById("months").innerHTML = getMonth(month);
};

function getMonth(month) {
    var monthName;
    if (month === 12) {
}
    return monthName;
}

http://jsfiddle.net/priswiz/kU8Js/

4

5 に答える 5

3
function getMonth(monthNumber) {
    var monthNames = [ "January", "February", "March", "April", "May", "June",
    "July", "August", "September", "October", "November", "December" ];

    return monthNames[monthNumber-1];
}
于 2013-03-15T21:54:44.357 に答える
2

いくつかのこと:

  • monthName変数を関数内の何かと等しく設定することは決してありませんgetMonth
  • でのあなたの論理はonload少し厄介でした。
  • divクラスではなく、「月」のIDが必要です。

JSFiddle に基づいたコードの動作バージョン: http://jsfiddle.net/kU8Js/2/

window.onload = function() {
    document.getElementById("months").innerHTML = getMonth(12);   
};

function getMonth(month) {
    var monthName;
    if (month === 12) {
        monthName = "December";
    }
    return monthName;
}

そうは言っても、Ellochka Cannibalにはそれを行うためのはるかに優れた方法があります. しかし、そこに行きます。

于 2013-03-15T21:54:26.433 に答える
1

月の配列を定義してから、それを月番号と名前の間のマップとして使用する必要があります。

var months = new Array( "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December");
window.onload = function() {
     var monthName = getMonth(12);  

$(".months").html(monthName)   ;
};

function getMonth(monthNo) {

return months[monthNo-1];  //the array start with 0 and month no. start with 1
}

彼は実行中のソリューションです

于 2013-03-15T22:02:06.093 に答える
0

すばやく検索できるように名前をマップに保存し、簡単に拡張できます。

var getMonth = function (num) {
    var m = {
        0: 'Jan', 1: 'Feb', 2: 'Mar',
        3: 'Apr', 4: 'May', 5: 'Jun',
        6: 'Jul', 7: 'Aug', 8: 'Sep',
        9: 'Oct', 10: 'Nov', 11: 'Dec'
    }
    return m[num];
}

ところで、ここに修正された jsfiddle があります: http://jsfiddle.net/kU8Js/4/。クラスで getElementById を使用することはできません。

于 2013-03-15T22:18:50.640 に答える