javascript 从Date中获取星期几
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript 从Date中获取星期几相关的知识,希望对你有一定的参考价值。
假如我使用一个日期来实例了一个Date
要怎么从这个Date中获取这个日期是星期几啊
通过getDay() 方法,可返回表示星期的某一天的数字。
星期中的某一天,使用本地时间。返回值是 0(周日) 到 6(周六) 之间的一个整数。
示例:
<script type="text/javascript">var d=new Date()
var weekday=new Array(7)
weekday[0]="星期天"
weekday[1]="星期一"
weekday[2]="星期二"
weekday[3]="星期三"
weekday[4]="星期四"
weekday[5]="星期五"
weekday[6]="星期六"
document.write("Today it is " + weekday[d.getDay()])//返回当前时间是星期几
</script> 参考技术A var mydate=new Date();
var myweekday=mydate.getDay();
var weekday = "";
if(myweekday == 0)
weekday=" 星期日";
else if(myweekday == 1)
weekday=" 星期一";
else if(myweekday == 2)
weekday=" 星期二";
else if(myweekday == 3)
weekday=" 星期三";
else if(myweekday == 4)
weekday=" 星期四";
else if(myweekday == 5)
weekday=" 星期五";
else if(myweekday == 6)
weekday=" 星期六"; 参考技术B getDay()本回答被提问者采纳
从用户输入中获取星期几
【中文标题】从用户输入中获取星期几【英文标题】:Getting the day of the week from user input 【发布时间】:2014-01-26 05:43:47 【问题描述】:Date date= (new GregorianCalendar(year, month, day)).getTime();
SimpleDateFormat f = new SimpleDateFormat("EEEE");
String dow=f.format(date);
System.out.print("This date is a "+dow);
我让用户输入一个月(1-12)一天(1-31)和一年(1600-2400) 它工作正常,只是它显示错误的日期。例如,它说 2014 年 1 月 1 日是星期六,但它是星期三。 这可能是因为我没有考虑闰年,但我不知道如何去做。我也不知道如何告诉它每个月有多少天。数组? 希望线条也最少。
非常感谢!!!这已经困扰了我一个小时+。这么简单的事情,我应该想到的。我一定很累。
谢谢!!!!!!!
【问题讨论】:
How to determine day of week by passing specific date?的可能重复 月份从零开始。 docs.oracle.com/javase/7/docs/api/java/util/… 【参考方案1】:Month
是从零开始的。试试吧,
Date date= (new GregorianCalendar(year, month-1, day)).getTime();
SimpleDateFormat f = new SimpleDateFormat("EEEE");
String dow=f.format(date);
【讨论】:
【参考方案2】:answer by Shashank Kadne 是正确的。
乔达时间
仅供参考,使用Joda-Time 2.3 库,这项工作更简单、更干净。
Joda-Time 使用基于 1 的合理计数来处理以下事情:
一年中的月份一月 = 1,二月 = 2,依此类推。 星期几星期一 = 1,星期日 = 7。(标准 ISO 8601 星期)Joda-Time DateTime
对象知道自己的时区,这与 java.util.Date
对象不同。
Joda-Time 利用指定的Locale
对象来呈现本地化字符串。
示例代码
// Specify a time zone rather than rely on default.
DateTimeZone timeZone = DateTimeZone.forID( "Europe/Paris" );
int year = 2014;
int month = 1; // Sensible one-based counting. January = 1, February = 2, …
int dayOfMonth = 2;
DateTime dateTime = new DateTime( year, month, dayOfMonth, 0, 0, 0, timeZone );
// Day-of-week info.
int dayOfWeekNumber = dateTime.getDayOfWeek(); // Standard week (ISO 8601). Monday = 1, Sunday = 7.
DateTime.Property dayOfWeekProperty = dateTime.dayOfWeek();
String dayOfWeekName_Short = dayOfWeekProperty.getAsShortText( Locale.FRANCE );
String dayOfWeekName_Long = dayOfWeekProperty.getAsText( Locale.FRANCE );
转储到控制台...
System.out.println( "dateTime: " + dateTime );
System.out.println( "dayOfWeekNumber: " + dayOfWeekNumber );
System.out.println( "dayOfWeekName_Short: " + dayOfWeekName_Short );
System.out.println( "dayOfWeekName_Long: " + dayOfWeekName_Long );
运行时……
dateTime: 2014-01-02T00:00:00.000+01:00
dayOfWeekNumber: 4
dayOfWeekName_Short: jeu.
dayOfWeekName_Long: jeudi
没有时间和时区
如果您真的只想要没有任何时间或时区的日期,请编写类似的代码,但使用 LocalDate 类。
【讨论】:
以上是关于javascript 从Date中获取星期几的主要内容,如果未能解决你的问题,请参考以下文章