gpt4 book ai didi

javascript - JavaScript 中的月份数组不漂亮

转载 作者:可可西里 更新时间:2023-11-01 01:19:59 25 4
gpt4 key购买 nike

如何让它变得更好?

var month = new Array();

month['01']='Jan';
month['02']='Feb';
month['03']='Mar';

等这样做会很好:

var months = new Array(['01','Jan'],['02','Feb'],['03','Mar']);

例如。无论如何要简化它?

最佳答案

要获得更自然的方法,请尝试这个小片段。它与 Date 对象一起工作,就像一个常规函数一样:

'use strict';

(function(d){
var mL = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'];
var mS = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'June', 'July', 'Aug', 'Sept', 'Oct', 'Nov', 'Dec'];

d.prototype.getLongMonth = d.getLongMonth = function getLongMonth (inMonth) {
return gM.call(this, inMonth, mL);
}

d.prototype.getShortMonth = d.getShortMonth = function getShortMonth (inMonth) {
return gM.call(this, inMonth, mS);
}

function gM(inMonth, arr){
var m;

if(this instanceof d){
m = this.getMonth();
}
else if(typeof inMonth !== 'undefined') {
m = parseInt(inMonth,10) - 1; // Subtract 1 to start January at zero
}

return arr[m];
}
})(Date);

你可以直接复制粘贴,然后这样使用:

var today = new Date();
console.log(today.getLongMonth());
console.log(Date.getLongMonth(9)); // September
console.log(today.getShortMonth());
console.log(Date.getShortMonth('09')); // Sept

此技术将提供关于索引方式和访问方式的灵 active 。当使用 Date 对象时,它会正常工作,但如果将它用作独立函数,它会考虑 1-12 之间人类可读格式的月份。

Fiddle with it!

关于javascript - JavaScript 中的月份数组不漂亮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3260939/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com