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 關注
- 209 瀏覽
添加回答
舉報