Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/419.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在HTML上显示特定的日期格式_Javascript_Html_Mysql_Nunjucks - Fatal编程技术网

Javascript 如何在HTML上显示特定的日期格式

Javascript 如何在HTML上显示特定的日期格式,javascript,html,mysql,nunjucks,Javascript,Html,Mysql,Nunjucks,如何设置网站上显示给用户的日期格式?基本上,我从MySQL表中获取日期,并使用Nunjucks显示在网站上 MySQL代码: CREATE TABLE IF NOT EXISTS `awards` ( `id` int(11) NOT NULL, `awardtime` TIME, `awardate` DATE, 显示日期和时间的HTML代码: {{ results.awardtime }} {{ results.awardate }} 输出: 2019年11月27日星期三00

如何设置网站上显示给用户的日期格式?基本上,我从MySQL表中获取日期,并使用Nunjucks显示在网站上

MySQL代码:

CREATE TABLE IF NOT EXISTS `awards` (
  `id` int(11) NOT NULL,
  `awardtime` TIME,
  `awardate` DATE,
显示日期和时间的HTML代码:

{{ results.awardtime }}
{{ results.awardate }}
输出:
2019年11月27日星期三00:00:00 GMT-0800(太平洋标准时间)

所需输出(示例):

2019年11月20日

您可以根据您的要求尝试此功能

var dateStr = 'Wed Nov 27 2019 00:00:00 GMT-0800 (PST)'; // results.awardate

var date = new Date(dateStr);
var y = date.getFullYear();
var m = date.getMonth() + 1;
var d = date.getDate();

var nice = m + "-" + d + "-" + y;

// {{ nice }}
console.log( nice ); // 11-27-2019

let date = new Date(results.awardtime);

let year = date.getFullYear();
let month = date.getMonth() +1
let day = date.getDate();
let finaldate = `${month}-${day}-${year}`

{finaldate}


如果要在不添加依赖项的情况下对其进行格式化:

const formattedDate = new Intl.DateTimeFormat().format(date).replace(/\//g, '-')
带有:


您可以尝试:

日期的最大问题是日期格式取决于国家(地区)。此外,结果可能有一些变体,例如使用
-
/
作为测力计。也别忘了时区,哈

此时,渲染意味着
{{results.awardtime.toString()}
。我建议实现最新的渲染

var nunjucks  = require('nunjucks');
var env = nunjucks.configure();

env.addFilter('date', function (datetime) {
  // Here you can use any function from other answers
  return new Date(+datetime).toLocaleDateString('es-CL', {
    year: 'numeric', 
    day: '2-digit', 
    month: '2-digit'
  });
};

var html = env.renderString(`Today: {{ now | date }}`, {now: Date.now()});
console.log(html);

虽然您的代码可能会回答PO的问题,但您应该添加一个简短的说明,说明您所做的工作以及如何解决问题。
var nunjucks  = require('nunjucks');
var env = nunjucks.configure();

env.addFilter('date', function (datetime) {
  // Here you can use any function from other answers
  return new Date(+datetime).toLocaleDateString('es-CL', {
    year: 'numeric', 
    day: '2-digit', 
    month: '2-digit'
  });
};

var html = env.renderString(`Today: {{ now | date }}`, {now: Date.now()});
console.log(html);