Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/463.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
jquery/javascript将日期字符串转换为日期_Javascript_Jquery_String_Date_Object - Fatal编程技术网

jquery/javascript将日期字符串转换为日期

jquery/javascript将日期字符串转换为日期,javascript,jquery,string,date,object,Javascript,Jquery,String,Date,Object,我有一个日期字符串“2010年2月28日,星期日”,我想将其转换为格式为@MM/DD/YYYY的js日期对象,但不知道如何转换。有什么建议吗 我会抓取,否则您需要使用自己的格式化功能 var stringDate = "Sunday, February 28, 2010"; var months = ["January", "February", "March"]; // You add the rest :-) var m = /(\w+) (\d+), (\d+)/.exec(stri

我有一个日期字符串“2010年2月28日,星期日”,我想将其转换为格式为@MM/DD/YYYY的js日期对象,但不知道如何转换。有什么建议吗

我会抓取,否则您需要使用自己的格式化功能

var stringDate = "Sunday, February 28, 2010";

var months = ["January", "February", "March"]; // You add the rest  :-)

var m = /(\w+) (\d+), (\d+)/.exec(stringDate);

var date = new Date(+m[3], months.indexOf(m[1]), +m[2]);
数组上的
indexOf
方法仅在较新的浏览器(即不支持IE)上受支持。您需要自己进行搜索,或者使用提供相同功能的多个库中的一个


此外,代码还缺少应添加的任何错误检查。(字符串与正则表达式不匹配、不存在月份等)

如果使用jQuery运行,可以使用datepicker UI库的parseDate函数将字符串转换为日期:

var d = $.datepicker.parseDate("DD, MM dd, yy",  "Sunday, February 28, 2010");
然后使用formatDate方法将其转换为所需的字符串格式

var datestrInNewFormat = $.datepicker.formatDate( "mm/dd/yy", d);
如果您没有使用jQuery运行,当然这可能不是最好的方案,因为您需要jQuery核心以及datepicker UI模块。。。最好按照上面SEGFULT的建议使用date.js


HTH

如果您只需要一次,那么加载插件就太过分了

对于日期“dd/mm/yyyy”,这对我来说很有用:

new Date(d.date.substring(6, 10),d.date.substring(3, 5)-1,d.date.substring(0, 2));
只需颠倒mm/dd/yyyy的月份和日期,语法是
newdate(y,m,d)


我使用javascript日期函数toLocaleDateString获取

var Today = new Date();
var r = Today.toLocaleDateString();
r的结果将是

11/29/2016
更多信息,请访问:

对任何日期操作使用矩js

console.log(瞬间(“2010年2月28日星期日”).format(“MM/DD/YYYY”)

+1获取使用jquery的答案。最接近这个问题的答案。如果您使用的是jquery,则无需添加另一个库。datepicker不是jQuery的一部分。它是jQueryUI的一部分。如果您只有核心库,那么您实际上是在添加另一个库。如果您没有或不打算使用jQuery UI,那么我会看看矩.js。@科林,这就是我解释的“您需要jQuery核心以及datepicker UI模块”的意思。@isherwood我不同意。我认为这是一个相当模糊的句子。我认为这需要jQuery核心和它的一些子模块组件。还不清楚是否还需要包含jqueryui。事实上,有很多JS库都有“日期选择器UI模块”。因此,假设您确实推断要包含另一个库,那么仍然不清楚jQuery UI是否是要获取的库。应该注意的是,date.JS在更改日期原型时破坏了jQuery UI日期选择器。jQuery core说他们不会修复与此相关的bug。也许split()更快,您可以编写更短的代码:)