如何在JavaScript中获取当前日期?


当前回答

尽可能短。

要获得类似“2018-08-03”的格式:

let today=new Date().toISOString().slice(0,10)console.log(今天)

要获得类似“8/3/2018”的格式:

let today=new Date().toLocaleDateString()console.log(今天)

此外,还可以将locale作为参数传递,例如传递给LocaleDateString(“sr”)等。

其他回答

你可以用这个

<script>
function my_curr_date() {      
    var currentDate = new Date()
    var day = currentDate.getDate();
    var month = currentDate.getMonth() + 1;
    var year = currentDate.getFullYear();
    var my_date = month+"-"+day+"-"+year;
    document.getElementById("dateField").value=my_date;    
}
</script>

HTML是

<body onload='return my_curr_date();'>
    <input type='text' name='dateField' id='dateField' value='' />
</body>

使用JavaScript内置的Date.pr原型.toLocaleDateString()(MDN文档中有更多选项):

常量选项={月份:'2-位',天:'2位数',年份:'数字',};console.log(newDate().toLocaleDateString('en-US',选项));//年/月/日

我们可以使用具有良好浏览器支持的Intl.DateTimeFormat获得类似的行为。与toLocaleDateString()类似,我们可以传递带有选项的对象:

const date = new Date('Dec 2, 2021') // Thu Dec 16 2021 15:49:39 GMT-0600
const options = {
  day: '2-digit',
  month: '2-digit',
  year: 'numeric',
}
new Intl.DateTimeFormat('en-US', options).format(date) // '12/02/2021'

我认为这是一个老问题,但最简单的方法是:

var date = new Date();
var TimeStamp = date.toLocaleString();

function CurrentTime(){
  alert(TimeStamp);
}

这将获取当前时间,根据位置将其传递给字符串,然后您可以调用函数CurrentTime来显示时间。对我来说,这将是获取时间戳的最有效方法。

Try

`${Date()}`.slice(4,15)

console.log(`${Date()}`.slice(4,15))

这里我们使用标准的JS功能:模板文本、转换为字符串的Date对象和切片。这可能是满足OP要求的最短解决方案(没有时间,只有日期)

As toISOString()将只返回当前UTC时间,而不是本地时间。我们必须使用“.toString()”函数生成日期,以yyyy-MM-dd格式获取日期,如

document.write(new Date(new Date).toString().split('GMT')[0]+'UTC').toISOString().spit('T')[0]);

以yyyy-MM-ddTHH:MM:ss格式获取日期和时间

document.write(new Date(new Date).toString().split('GMT')[0]+'UTC').toISOString().spit('.')[0]);

以yyyy-MM-dd HH:MM:ss格式获取日期和时间

document.write(new Date(new Date).toString().split('GMT')[0]+'UTC').toISOString().spit('.')[0].replace('T',''));