在 Java 和 JavaScript 中,日期文本框应始终为当前月份的第一个日期

问题描述 投票:0回答:3

我希望 JavaScript 或 Java 程序应始终给出当月 1 日的日期。

有什么技术吗?

java javascript jsp
3个回答
1
投票

您可以使用适用于 Java

的日历
      Date date = new Date(System.currentTimeMillis());
      cal = Calendar.getInstance();
      cal.setTime(date);
      cal.set(Calendar.DAY_OF_MONTH, 1);

现在您可以使用此日历对象执行您想要执行的操作,例如获取一周中的某一天(星期六、星期日......)

int weekday = cal.get(Calendar.DAY_OF_WEEK);

对于 JavaScript,您可以使用:

var theFirst = new Date();
theFirst.setDate(1);

setDate
设置 Date 对象中的某一天(从 1 到 31)。 然后你可以用 theFirst 做任何你想做的事情,比如获取星期几。


0
投票
Calendar ans = Calendar.getInstance();

ans.set(ans.get(Calendar.YEAR),
        ans.get(Calendar.MONTH),
        1,
        0,
        0,
        0
);
System.out.println(ans.getTime());

0
投票

tl;博士

在爪哇中:

LocalDate first = YearMonth.now( ZoneId.of( "Asia/Tokyo" ) ).atDay( 1 ); 

Java

在现代 Java 中:

  • 使用 JSR 310 中定义的 java.time 类。
  • 永远不要使用有严重缺陷的遗留日期时间类,如
    Date
    Calendar
    SimpleDateFormat

当前月份

确定当前月份需要时区。对于任何给定时刻,全球各地的时间和日期都会因时区而异。如果日期不同,月份也可能不同。可能是下个月在日本东京,同时上个月在美国俄亥俄州托莱多。

ZoneId z = ZoneId.of( "America/Edmonton" ) ;

要获取当年的当前月份,请使用

YearMonth
类。

YearMonth currentYearMonth = YearMonth.now( z ) ;

给出第一天的日期

YearMonth
对象询问该月的第一个日期。

LocalDate firstOfCurrentYearMonth = currentYearMonth.atDay( 1 ) ;
© www.soinside.com 2019 - 2024. All rights reserved.