重新排列日期格式jQuery或javascript

时间:2017-07-24 01:39:38

标签: javascript jquery

你好我有一个用这种格式生成日期的函数:

MM-DD-YYYY

是否有任何jquery或javascript技巧可将该值转换为:

YYYY-MM-DD

更详细的说明:

我生成的函数生成日期并存储在名为tdate

的变量中

所以var tdate = 01-30-2001

我想做一些jquery或javascript来将tdate变成:

tdate = 2001-01-30

tdate是一个字符串

谢谢!

4 个答案:

答案 0 :(得分:4)

您可以使用.split(),解构分配,termplate文字以任意顺序放置yyyymmdd



var date = "01-30-2001";

var [mm, dd, yyyy] = date.split("-");

var revdate = `${yyyy}-${mm}-${dd}`;

console.log(revdate)




答案 1 :(得分:4)

您可以使用一点 regex 来捕获并重新排序:< / p>

&#13;
&#13;
var tdate = "01-30-2001";

console.log(
  tdate.replace(/^(\d{2})-(\d{2})-(\d{4})$/, "$3-$1-$2")
)
&#13;
&#13;
&#13;

答案 2 :(得分:1)

你可以将字符串拆分为&#39; - &#39;然后重新排列一次数组并再次加入以形成日期。

&#13;
&#13;
var date = "01-30-2001";

var arr = date.split("-");
var revdate = arr.splice(-1).concat(arr.splice(0,2)).join('-');
console.log(revdate);
&#13;
&#13;
&#13;

答案 3 :(得分:1)

可以将字符串切片()并按照您希望的方式将其重新组合

&#13;
&#13;
var tdate = '01-30-2001';

tdate = [tdate.slice(-4), tdate.slice(0,5)].join('-');
// or tdate = tdate.slice(-4) + '-' +  tdate.slice(0,5)
 
console.log(tdate)
&#13;
&#13;
&#13;