Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/462.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用JavaScript从日期对象或日期字符串获取工作日_Javascript_String_Function_Date_Dayofweek - Fatal编程技术网

使用JavaScript从日期对象或日期字符串获取工作日

使用JavaScript从日期对象或日期字符串获取工作日,javascript,string,function,date,dayofweek,Javascript,String,Function,Date,Dayofweek,我有一个(yyyy-mm-dd)格式的日期字符串,如何从中获取工作日名称 示例: 对于字符串“2013-07-31”,输出为“星期三” 对于使用new date()的今天的日期,输出将基于一周中的当前日期 使用以下代码: var gsDayNames = [ 'Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday' ]; var d = new Date("2013-0

我有一个(yyyy-mm-dd)格式的日期字符串,如何从中获取工作日名称

示例:

  • 对于字符串“2013-07-31”,输出为“星期三”
  • 对于使用
    new date()
    的今天的日期,输出将基于一周中的当前日期
使用以下代码:

var gsDayNames = [
  'Sunday',
  'Monday',
  'Tuesday',
  'Wednesday',
  'Thursday',
  'Friday',
  'Saturday'
];

var d = new Date("2013-07-31");
var dayName = gsDayNames[d.getDay()];
//dayName will return the name of day
使用此函数,附带日期字符串验证: 如果您在项目中的某个位置包含此功能

// Accepts a Date object or date string that is recognized by the Date.parse() method
function getDayOfWeek(date) {
  const dayOfWeek = new Date(date).getDay();    
  return isNaN(dayOfWeek) ? null : 
    ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'][dayOfWeek];
}
您可以在任何地方轻松使用它,如下所示:

getDayOfWeek( "2013-07-31" )
> "Wednesday"

getDayOfWeek( new Date() ) // or
getDayOfWeek( Date.now() )
> // (will return today's day. See demo jsfiddle below...)
如果使用无效的日期字符串,将返回空值

getDayOfWeek( "~invalid string~" );
> null
有效的日期字符串基于

演示:



当然,您也可以使用该插件,特别是在需要时区的情况下。

这里有一系列解决方案,但请先检查支持情况。
let current=new Date();
let today=current.toLocaleDateString('en-US',{weekday:'long'});
console.log(今天);
让today2=new Intl.DateTimeFormat('en-US',{weekday:'long'}).format(当前)