我有这个date1,我想插入" - "使其成为2016-09-23。有人知道如何使用javascript做到这一点吗?
var date1 = "20160923";
答案 0 :(得分:8)
您可以使用正则表达式:
var ret = "20160923".replace(/(\d{4})(\d{2})(\d{2})/, "$1-$2-$3");
console.log(ret);

/)
答案 1 :(得分:6)
鉴于年份为4位数,月份和日期为2位数,您可以使用此代码
var date1 = "20160923";
var formattedDate = date1.slice(0, 4) + "-" + date1.slice(4, 6) + "-" + date1.slice(6, 8);
console.log(formattedDate);

答案 2 :(得分:2)
没有直接的方法,您可以使用Prototype对象编写自己的方法,如InsertAt(char,pos)
[来自 here 的引用]
String.prototype.InsertAt=function(CharToInsert,Position){
return this.slice(0,Position) + CharToInsert + this.slice(Position)
}
然后像这样使用它
"20160923".InsertAt('-',4); //Output :"2016-0923"
答案 3 :(得分:-1)
假设date1始终一致......
var date2 = date1.slice(0, 4) + '-' + date1.slice(4, 6) + '-' + date1.slice(6, 8);