簡體   English   中英

節點中的日期toLocaleDateString

[英]Date toLocaleDateString in node

當我在瀏覽器中使用toLocaleDateString時它返回

n = new Date()
n.toLocaleDateString()
"2/10/2013"

但在node.js格式完全不同

n = new Date()
> n.toLocaleDateString()
'Sunday, February 10, 2013'

如何在node.js中獲取瀏覽器的格式( mm/dd/yy )?

對我來說,解決方案是為node js full-icu-npm安裝額外的模塊full-icu

在package.json之后插入:

{"scripts":{"start":"node --icu-data-dir=node_modules/full-icu YOURAPP.js"}}

要么

在當前版本的Node.js v10.9.0中是Internationalization Support 要控制在Node.js中如何使用ICU,您可以配置編譯期間可用的選項。 如果使用small-icu選項,則需要在運行時提供ICU數據:

  • NODE_ICU_DATA環境變量: env NODE_ICU_DATA=/some/directory node
  • --icu-data-dir CLI參數: node --icu-data-dir=/some/directory

我也在node.JS中發現了這個。 例如,在節點控制台中,鍵入

new Date().toLocaleDateString('en-GB')

它仍然顯示美國格式。 使用上面的Werner方法,您可以覆蓋語言環境的默認Date.toLocaleDateString()行為:

Date.prototype.toLocaleDateString = function () {
    return `${this.getDate()}/${this.getMonth() + 1}/${this.getFullYear()}`;
};

在node.JS中,您無法獲得瀏覽器的格式。 Node.JS在服務器端運行。

在客戶端JS框架的瀏覽器中顯示之前,您必須進行日期格式化。

Date.prototype.toLocaleDateString = function () {
  var d = new Date();
  return (d.getMonth() + 1) + "/" + d.getDate() + "/" + d.getFullYear();
};

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM