3 回答
TA贡献1847条经验 获得超7个赞
function leftpad (str, len, ch) {
// str:要转换的字符串/数字、len:转多长、ch:拼接符
str = String(str)
var i = -1
if (!ch && ch !== 0) ch = ' '
len = len - str.length
while (++i < len) {
str = ch + str
}
return str
}
function revertDate(date){
var str = date.split('/');
var res = str[0] + '-' + leftpad(str[1], 2, '0');
return res;
}
console.log(revertDate('2018/7/26'));
TA贡献1796条经验 获得超10个赞
泻药,只是面对这个题目的话:('2018/7/26').replace(/\b(\d)\b/g, '0$1').replace(/^(\d{4})\/(\d{2})\/\d{2}/,'$1-$2')
分两步操作:
替换日期字符中的单个位数为双位数,包括月份和天
替换
/
为-
其中,$1 $2 是分组操作,代表正则中()中的匹配内容,$1就是第一个括号中的$2就是第二个括号中的,如果存在嵌套,那么从外向里数。
TA贡献1853条经验 获得超9个赞
var a = '2018/7/26'.split('/');
var b = a[0] + '-' + (a[1] < 10 ? '0':'') + a[1];
console.log(b);
- 3 回答
- 0 关注
- 154 浏览
添加回答
举报