2017-08-08 48 views
0

我使用Intl庫在我的javascript代碼,如下:有沒有什麼辦法可以得到基於語言環境的日期格式?

const dateFormat = new Intl.DateTimeFormat(locale, { 
    day: '2-digit', 
    month: '2-digit', 
    year: 'numeric', 
}); 
kk = new Date('1992-10-28') 
dateFormat.format(kk, 'en-Us') ==> "10/28/1992" 

但我想是這樣"dd/mm/yyyy"爲響應:

let format = dateFormat.getFormat('en-Us'); // --> "dd/mm/yyyy" 
+0

可能的[*在哪裏可以找到文檔格式化在JavaScript中的日期?*]重複(https://stackoverflow.com/questions/1056728/where-can-i -find的文檔上格式化-A-日期中的JavaScript) – RobG

回答

0

的國際對象不允許您指定整個格式,只有它的一部分。如果你想要一個特定的值序列,你可以嘗試一個適合或者手工操作的語言值。除了美國以外,幾乎任何英語變體都會給d,m,y,但分隔符是另一個問題。幸運的是,「/」似乎是默認設置。令人驚訝的是,如果您提供的英文版本無法識別,它可能會默認使用特定的美國m/d/y序列。

var d = new Date(); 
 
var options = {day:'2-digit', month:'2-digit', year:'numeric'} 
 

 
console.log(d.toLocaleString('en-gb', options));

否則,圖書館可以幫助,但如果你只希望支持一種格式,2或3線功能就行了。

function formatDMY(date) { 
 
    var z = function(n){return (n<10?'0':'')+n} 
 
    return z(date.getDate()) + '/' + 
 
     z(date.getMonth()+1) + '/' + 
 
     date.getFullYear(); 
 
} 
 

 
console.log(formatDMY(new Date()));

相關問題