-2

如果我需要使用 .toDateString() 方法来显示日期,那么最好的方法是什么?

例如:假设它在本月的 1 日和 7 日之间,消息将显示为“x”,其他所有内容为“y”

提前非常感谢,处理日期很糟糕!

4

3 回答 3

1

如果您正在使用该.toDateString()方法,则意味着您是Date()对象的骄傲拥有者!这个对象有许多其他有用的帮助函数。其中之一可能是您感兴趣的。就是getDate()功能

getDate()函数将返回一个介于 1 和 31 之间的整数。因此,您将能够简单地查看返回的值并采取相应的行动。

一个非常简单的例子:

var d = new Date();

switch( d.getDate() ){
  case 1:
  case 7:
    // behavior for days that are the 1st or 7th of the month
    break;
  default:
    // behavior for any day that is not the 1st of 7th of the month
}

参考 -

于 2013-07-18T22:59:49.907 回答
0

如果只能使用toDateString()来处理日期,则必须进行一些字符串解析以提取所需的数据...

toDateString()返回一个类似于这样的字符串:"Fri Jul 19 2013"。你可以做的是用空格字符分割那个值:

var date_obj = new Date();
var date_string = date_obj.toDateString();
var date_parts = date_string.split(" ");

您现在将拥有一个如下所示的数组:["Fri", "Jul", "19", "2013"]

从这里您需要做的就是提取索引 2 处的第三个元素以获得与getDate()(返回的正是您要查找的内容)相同的输出。

于 2013-07-18T23:13:45.537 回答
0

一般来说,我会推荐使用moment.js。它是 javascript 的最佳日期/时间库。看看有没有你想要的。否则,就您以不同方式显示日期的问题而言,如果它是本月的 1 日与本月的 21 日,我会说只使用返回月份日期的 moment 的 moment().date() 函数。

干杯

于 2013-07-18T23:00:32.487 回答