Javascript 我可以得到格式化未来日期的帮助吗?

Javascript 我可以得到格式化未来日期的帮助吗?,javascript,Javascript,在一个天气应用程序,包括一个5天的预测工作,我想显示的日期。我不知道如何将其格式设置为只有月份、日期和年份(例如:2020年7月23日),应该是'll'。它仍然显示为“Jul 23 2020 Fri Jul 24 2020 19:54:06 GMT-0700(太平洋夏令时)日”,而不是格式正确 这是我的HTML: <div class="row"> <div class="col" id = "one&q

在一个天气应用程序,包括一个5天的预测工作,我想显示的日期。我不知道如何将其格式设置为只有月份、日期和年份(例如:2020年7月23日),应该是'll'。它仍然显示为“Jul 23 2020 Fri Jul 24 2020 19:54:06 GMT-0700(太平洋夏令时)日”,而不是格式正确

这是我的HTML:

    <div class="row">
        <div class="col" id = "one" ></div>
        <div class="col" id = "two" > Day Two</div>
        <div class="col" id = "three" > Day Three</div>
        <div class="col" id = "four" > Day Four</div>
        <div class="col" id = "five" > Day Five</div>
    </div>

假设您需要的格式总是与您提到的相同

function format(date){
    var months=['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'];
    var suffices={_0:'th',_1:'st',_2:'nd',_3:'rd',_4:'th',_5:'th',_6:'th',_7:'th',_8:'th',_9:'th',_11:'th',_12:'th',_13:'th'};
    return months[date.getMonth()]+' '+date.getDate()+(suffices['_'+date.getDate()] || suffices['_'+date.getDate()%10])+' '+date.getFullYear();

}
用法

format(new Date())//returns "Jul 24th 2020"
format(new Date(2020,11,13))//returns "Dec 13th 2020"

如果您只是想要日期的左边,那么您所要做的就是解析日期字符串。大概是这样的:

var mydate = new Date().toString().split(' ');
var formattedDate = b =  a[1] + " " + a[2] + " " + a[3];

如果你坚持在你的号码后面加上“rd”,那就需要一个类似于其他答案的查找表。此代码按空格将字符串拆分为字符串数组,然后将第2、第3和第4个元素合并为一个新字符串。

您在哪里使用了矩?希望您使用矩更改代码吗?我以为我使用了矩格式,但我想不是吗?如果方便的话,我不介意换成现在。或者,如果我能得到帮助,用标准javascript格式化它,这也行得通。我在下面添加了一个答案。如果这不是你想要的,那么“瞬间”是有效的,但是它太有限了,我们只能用剑道日期工具来代替。所以我在我已有的代码之前添加了你的函数,它没有改变任何东西。有什么建议吗?您需要明天将
传递给给定函数。这将为您提供一个格式化的日期字符串。这不是你想要的吗?我不明白你的问题。我的目标是在我的屏幕上显示2020年7月23日(或以当天为准)。你的问题是你在格式化日期时遇到了问题。我给你的fn只处理这个问题。在您的情况下,您需要将
明天
传递给此fn,并将返回值指定为
one.innerHTML=format(明天)我像这样输入它,但它不起作用。我插错了吗?var mydate=new Date().toString().split(“”);var formattedDate=b=a[1]+“”+a[2]+“”+a[3];const明天=我的日期;明天.setDate(mydate.getDate()+1);var one=document.getElementById('one');一天=明天;
var mydate = new Date().toString().split(' ');
var formattedDate = b =  a[1] + " " + a[2] + " " + a[3];