我有一个日期,格式是2014年5月11日太阳。如何使用JavaScript将其转换为2014-05-11 ?

函数taskDate(dateMilli) { var d = (new Date(dateMilli) + ")。分割(' '); D [2] = D [2] + ','; 返回[d[0], d[1], d[2], d[3]]。加入(' '); } var datemilli =日期。解析(' 2014年5月11日'); console.log (taskDate (datemilli));

上面的代码给了我相同的日期格式,2014年5月11日。我该如何解决这个问题?


当前回答

const today = new Date(); // or whatever const yearFirstFormater = (date): string => { const modifiedDate = new Date(date).toISOString().slice(0, 10); return `${modifiedDate.split('-')[0]}/${modifiedDate.split('-')[1]}/${modifiedDate.split('-')[2]}`; } const monthFirstFormater = (date): string => { const modifiedDate = new Date(date).toISOString().slice(0, 10); return `${modifiedDate.split('-')[1]}/${modifiedDate.split('-')[2]}/${modifiedDate.split('-')[0]}`; } const dayFirstFormater = (date): string => { const modifiedDate = new Date(date).toISOString().slice(0, 10); return `${modifiedDate.split('-')[2]}/${modifiedDate.split('-')[1]}/${modifiedDate.split('-')[0]}`; } console.log(yearFirstFormater(today)); console.log(monthFirstFormater(today)); console.log(dayFirstFormater(today));

其他回答

var d = new Date("Sun May 1,2014"); var year = d.getFullYear(); var month = d.getMonth() + 1; var day = d.getDate(); month = checkZero(month); day = checkZero(day); var date = ""; date += year; date += "-"; date += month; date += "-"; date += day; document.querySelector("#display").innerHTML = date; function checkZero(i) { if (i < 10) { i = "0" + i }; // add zero in front of numbers < 10 return i; } <div id="display"></div>

new Date(new Date(YOUR_DATE.toISOString()).getTime() - 
                 (YOUR_DATE.getTimezoneOffset() * 60 * 1000)).toISOString().substr(0, 10)

这段代码改变了DD MM YYYY的顺序

function convertDate(format, date) {
    let formatArray = format.split('/');
    if (formatArray.length != 3) {
        console.error('Use a valid Date format');
        return;
    }
    function getType(type) { return type == 'DD' ? d.getDate() : type == 'MM' ? d.getMonth() + 1 : type == 'YYYY' && d.getFullYear(); }
    function pad(s) { return (s < 10) ? '0' + s : s; }
    var d = new Date(date);
    return [pad(getType(formatArray[0])), pad(getType(formatArray[1])), getType(formatArray[2])].join('/');
}

函数 myYmd(D){ var pad = function(num) { 变量 s = '0' + 数字; 返回 s.substr(s.length - 2); } var Result = D.getFullYear() + '-' + pad((D.getMonth() + 1)) + '-' + pad(D.getDate()); 返回结果; } var datemilli = new Date('Sun May 11,2014'); document.write(myYmd(datemilli));

你可以:

函数formatDate(日期){ var d = new Date(日期), 月= " + (d.getMonth() + 1) ", day = " + d.getDate(), year = d.g getfullyear (); 如果(月。长度< 2) 月= '0' +月; 如果一天。长度< 2) Day = '0' + Day; 返回[年,月,日].join('-'); } console.log(formatDate('Sun May 11,2014'));

使用的例子:

console.log(formatDate('Sun May 11,2014'));

输出:

2014-05-11

JSFiddle的演示:http://jsfiddle.net/abdulrauf6182012/2Frm3/