JavaScript获取当前时间

一、JavaScript时间转时间戳

JavaScript获得时间戳的方法有五种,后四种都是通过实例化时间对象new Date() 来进一步获取当前的时间戳,JavaScript处理时间主要使用时间对象Date。

Date.now()

Date.now() 可以获得当前的时间戳

console.log(Date.now())  // 1720354454326

Date.parse()

Date.parse() 将字符串或者时间对象直接转化成时间戳

var a = Date.parse(new Date());
var b = Date.parse("2024/4/8 10:05");
var c = Date.parse("2024-4-8 10:05:24");

console.log(a);  // 1720354454000
console.log(b);  // 1712570700000
console.log(c);  // 1712570724000

不推荐这种办法,毫秒级别的数值被转化为000

valueOf()

通过 valueOf() 函数返回指定对象的原始值获得准确的时间戳值

console.log((new Date()).valueOf());  // 1720354454326

getTime()

通过 getTime() 方法直接获得当前时间的毫秒值

console.log(new Date().getTime()); // 1720354454326

number

将时间对象转化为一个number类型的数值,即时间戳

console.log(Number(new Date()));  // 1720354454326

二、js时间戳转时间

可以接用 new Date(时间戳) 格式转化获得当前时间,比如:

console.log(new Date(1720354454326));  // 2024-07-07T12:14:14.326Z 

时间戳参数必须是Number类型,如果是字符串,解析结果:Invalid Date。

生成 ‘2024/6/18 20:23’ 格式

function getLocalTime(n) {   
   return new Date(parseInt(n)).toLocaleString().replace(/:\d{1,2}$/,' ');   
}
console.log(getLocalTime(1718713389523));  // 2024/6/18 20:23

生成 ‘yyyy-MM-dd hh:mm:ss’ 格式

function getData(n){
	n = new Date(n);
	return n.toLocaleDateString().replace(/\//g, "-") + " " + n.toTimeString().substr(0, 8);
}
console.log(getData(1718713389523));  // 2024-6-18 20:23:09 
function getData(n) {
  	let now = new Date(n),
    y = now.getFullYear(),
    m = now.getMonth() + 1,
    d = now.getDate();
  	return y + "-" + (m < 10 ? "0" + m : m) + "-" + (d < 10 ? "0" + d : d) + " " + now.toTimeString().substr(0, 8);
}
console.log(getData(1718713389523));  // 2024-06-18 20:23:09

三、获取当前时间

当前系统区域设置格式 (toLocaleDateString 和 toLocaleTimeString)

// 2024/7/7 11:04:19
console.log((new Date()).toLocaleDateString() + " " + (new Date()).toLocaleTimeString());

普通字符串 (toDateString 和 toTimeString)

// Sun Jul 07 2024 11:04:19 GMT+0800 (中国标准时间)
console.log((new Date()).toDateString() + " " + (new Date()).toTimeString());

格林威治标准时间 (toGMTString)

// Sun, 07 Jul 2024 03:04:19 GMT
console.log((new Date()).toGMTString());

全球标准时间 (toUTCString)

// Sun, 07 Jul 2024 03:04:19 GMT
console.log((new Date()).toUTCString());

Date对象字符串 (toString)

// Sun Jul 07 2024 11:04:19 GMT+0800 (中国标准时间)
console.log((new Date()).toString());

Date对象构造函数

Date对象具有多种构造函数

new Date() 
new Date(milliseconds) 
new Date(datestring) 
new Date(year, month) 
new Date(year, month, day) 
new Date(year, month, day, hours) 
new Date(year, month, day, hours, minutes) 
new Date(year, month, day, hours, minutes, seconds) 
new Date(year, month, day, hours, minutes, seconds, microseconds) 

Date对象构造函数参数说明

milliseconds  -- 距离JavaScript内部定义的起始时间197011日的毫秒数 
datestring    -- 字符串代表的日期与时间。此字符串可以使用Date.parse()转换 
year          -- 四位数的年份,如果取值为0-99,则在其之上加上1900 
month         -- 0(代表一月)-11(代表十二月)之间的月份 
day           -- 1-31之间的日期 
hours         -- 0(代表午夜)-23之间的小时数 
minutes       -- 0-59之间的分钟数 
seconds       -- 0-59之间的秒数 
microseconds  -- 0-999之间的毫秒数 

Date对象返回值

如果没有任何参数,将返回当前日期;
如果参数为一个数字,将数字视为毫秒值,转换为日期
如果参数为一个字符串,将字符串视为日期的字符串表示,转换为日期
还可以使用六个构造函数精确定义,并返回时间

Date函数按功能分类

日期获取类函数

Date()                -- Date对象的构造     
getDate()             -- 返回date对象中的月份中的天数(1-31) 
getDay()              -- 返回date对象中的星期中的天数(0-6) 
getFullYear()         -- 返回date对象中的四位数年份 
getHours()            -- 返回date对象中的小时数(0-23) 
getMilliseconds()     -- 返回date对象中的毫秒数(0-999) 
getMinutes()          -- 返回date对象中的分钟数(0-59) 
getMonth()            -- 返回date对象中的月份数(0-11) 
getSeconds()          -- 返回date对象中的秒数(0-59) 
getTime()             -- 返回date对象的时间戳表示法(毫秒表示) 
getTimezoneOffset()   -- 返回本地时间与用UTC表示当前日期的时间差,以分钟为单位 
getUTCDate()          -- 返回date对象中用世界标准时间(UTC)表示的月份中的一天(1-31) 
getUTCDay()           -- 返回date对象中用世界标准时间(UTC)表示的周中的一天(0-6) 
getUTCFullYear()      -- 返回date对象中用世界标准时间(UTC)表示的四位年份 
getUTCHours()         -- 返回date对象中用世界标准时间(UTC)表示的小时数(0-23) 
getUTCMilliseconds()  -- 返回date对象中用世界标准时间(UTC)表示的毫秒数(0-999) 
getUTCMinutes()       -- 返回date对象中用世界标准时间(UTC)表示的分钟数(0-59) 
getUTCMonth()         -- 返回date对象中用世界标准时间(UTC)表示的月份数(0-11) 
getUTCSeconds()       -- 返回date对象中用世界标准时间(UTC)表示的秒数(0-59) 
getYear()             -- 返回date对象的年份(真实年份减去1900) 
Date.UTC()            -- 返回date对象距世界标准时间(UTC)1970年1月1日午夜之间的毫秒数(时间戳)

日期设置类函数

setDate()            -- 设置date对象中月份的一天,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳) 
setFullYear()        -- 设置date对象中的年份,月份和天,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳) 
setHours()           -- 设置date对象的小时,分钟,秒和毫秒,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳) 
setMilliseconds()    -- 设置date对象的毫秒数,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳) 
setMinutes()         -- 设置date对象的分钟,秒,毫秒,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳) 
setMonth()           -- 设置date对象中月份,天,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳) 
setSeconds()         -- 设置date对象中月份的一天,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳) 
setTime()            -- 使用毫秒数设置date对象,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳) 
setUTCDate()         -- 设置date对象中用世界标准时间(UTC)表示的月份的一天,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳) 
setUTCFullYear()     -- 设置date对象中用世界标准时间(UTC)表示的年份,月份和天,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳) 
setUTCHours()        -- 设置date对象中用世界标准时间(UTC)表示的小时,分钟,秒和毫秒,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳) 
setUTCMilliseconds() -- 设置date对象中用世界标准时间(UTC)表示的毫秒数,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳) 
setUTCMinutes()      -- 设置date对象中用世界标准时间(UTC)表示的分钟,秒,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳) 
setUTCMonth()        -- 设置date对象中用世界标准时间(UTC)表示的月份,天,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳) 
setUTCSeconds()      -- 设置date对象中用世界标准时间(UTC)表示的秒,毫秒,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳) 
setYear()            -- 设置date对象的年份(真实年份减去1900)

日期打印类函数

toDateString()       -- 返回date对象的日期部分的字符串表示 
toGMTString()        -- 返回date对象的格林威治时间(GMT)的字符串表示 
toLocaleDateString() -- 返回date对象的日期部分的本地化字符串 
toLocaleTimeString() -- 返回date对象的时间部分的本地化字符串 
toTimeString()       -- 返回date对象的时间部分的字符串 
toUTCString()        -- 返回date对象的世界标准时间(UTC)的字符串表示

日期解析类函数

Date.parse()         -- 解析一个日期的字符串,并返回该日期距1970年1月1日午夜之间的毫秒数(时间戳) 
Date()               -- Date对象的构造     
getDate()            -- 返回date对象中的月份中的天数(1-31) 
getDay()             -- 返回date对象中的星期中的天数(0-6) 
getFullYear()        -- 返回date对象中的四位数年份 
getHours()           -- 返回date对象中的小时数(0-23) 
getMilliseconds()    -- 返回date对象中的毫秒数(0-999) 
getMinutes()         -- 返回date对象中的分钟数(0-59) 
getMonth()           -- 返回date对象中的月份数(0-11) 
getSeconds()         -- 返回date对象中的秒数(0-59) 
getTime()            -- 返回date对象的时间戳表示法(毫秒表示) 
getTimezoneOffset()  -- 返回本地时间与用UTC表示当前日期的时间差,以分钟为单位 
getUTCDate()         -- 返回date对象中用世界标准时间(UTC)表示的月份中的一天(1-31) 
getUTCDay()          -- 返回date对象中用世界标准时间(UTC)表示的周中的一天(0-6) 
getUTCFullYear()     -- 返回date对象中用世界标准时间(UTC)表示的四位年份 
getUTCHours()        -- 返回date对象中用世界标准时间(UTC)表示的小时数(0-23) 
getUTCMilliseconds() -- 返回date对象中用世界标准时间(UTC)表示的毫秒数(0-999) 
getUTCMinutes()      -- 返回date对象中用世界标准时间(UTC)表示的分钟数(0-59) 
getUTCMonth()        -- 返回date对象中用世界标准时间(UTC)表示的月份数(0-11) 
getUTCSeconds()      -- 返回date对象中用世界标准时间(UTC)表示的秒数(0-59) 
getYear()            -- 返回date对象的年份(真实年份减去1900) 
Date.parse()         -- 解析一个日期的字符串,并返回该日期距1970年1月1日午夜之间的毫秒数(时间戳) 
setDate()            -- 设置date对象中月份的一天,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳) 
setFullYear()        -- 设置date对象中的年份,月份和天,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳) 
setHours()           -- 设置date对象的小时,分钟,秒和毫秒,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳) 
setMilliseconds()    -- 设置date对象的毫秒数,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳) 
setMinutes()         -- 设置date对象的分钟,秒,毫秒,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳) 
setMonth()           -- 设置date对象中月份,天,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳) 
setSeconds()         -- 设置date对象中月份的一天,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳) 
setTime()            -- 使用毫秒数设置date对象,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳) 
setUTCDate()         -- 设置date对象中用世界标准时间(UTC)表示的月份的一天,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳) 
setUTCFullYear()     -- 设置date对象中用世界标准时间(UTC)表示的年份,月份和天,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳) 
setUTCHours()        -- 设置date对象中用世界标准时间(UTC)表示的小时,分钟,秒和毫秒,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳) 
setUTCMilliseconds() -- 设置date对象中用世界标准时间(UTC)表示的毫秒数,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳) 
setUTCMinutes()      -- 设置date对象中用世界标准时间(UTC)表示的分钟,秒,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳) 
setUTCMonth()        -- 设置date对象中用世界标准时间(UTC)表示的月份,天,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳) 
setUTCSeconds()      -- 设置date对象中用世界标准时间(UTC)表示的秒,毫秒,并返回date对象距1970年1月1日午夜之间的毫秒数(时间戳) 
setYear()            -- 设置date对象的年份(真实年份减去1900) 
toDateString()       -- 返回date对象的日期部分的字符串表示 
toGMTString()        -- 返回date对象的格林威治时间(GMT)的字符串表示 
toLocaleDateString() -- 返回date对象的日期部分的本地化字符串 
toLocaleTimeString() -- 返回date对象的时间部分的本地化字符串 
toTimeString()       -- 返回date对象的时间部分的字符串 
toUTCString()        -- 返回date对象的世界标准时间(UTC)的字符串表示 
Date.UTC()           -- 返回date对象距世界标准时间(UTC)1970年1月1日午夜之间的毫秒数(时间戳)
### 回答1: 可以JavaScript的Date对象来获取当前时间。以下是获取当前时间的示例代码: ```javascript var currentDate = new Date(); console.log(currentDate); ``` 这将输出当前日期和时间的完整信息,例如:“Fri Dec 31 2021 17:18:34 GMT+0800 (中国标准时间)” ### 回答2: 在JavaScript中,可以使用内置的Date对象来获取当前时间。 首先,我们需要创建一个Date对象: ```javascript var currentDate = new Date(); ``` 现在,我们可以使用Date对象的方法来获取当前时间的各个部分。例如,要获取当前的小时数,可以使用getHours()方法: ```javascript var currentHour = currentDate.getHours(); ``` 类似地,可以使用getMinutes()方法获取当前的分钟数,getSeconds()方法获取当前的秒数,getMilliseconds()方法获取当前的毫秒数。 如果我们只对当前的日期感兴趣,可以使用getDate()方法来获取当前的日期数,getMonth()方法获取当前的月份(注意:月份从0开始计数,即0表示一月,1表示二月,以此类推),getFullYear()方法获取当前的年份。 要将获取到的时间显示出来,可以将其存储到一个变量中,然后将其输出到控制台或网页上。例如: ```javascript var currentTime = currentHour + ":" + currentDate.getMinutes() + ":" + currentDate.getSeconds(); console.log(currentTime); ``` 以上代码将输出当前的小时数、分钟数和秒数。 总而言之,以上就是使用JavaScript获取当前时间的方法。我们可以根据自己的需求调用Date对象的不同方法来获取特定的时间部分,并将其输出到控制台或网页上进行显示。 ### 回答3: 在JavaScript中,可以使用`Date`对象来获取当前时间。 ```javascript var currentDate = new Date(); // 创建一个Date对象 var currentYear = currentDate.getFullYear(); // 获取当前年份 var currentMonth = currentDate.getMonth() + 1; // 获取当前月份(注意月份从0开始,所以要+1) var currentDay = currentDate.getDate(); // 获取当前日期 var currentHour = currentDate.getHours(); // 获取当前小时数 var currentMinute = currentDate.getMinutes(); // 获取当前分钟数 var currentSecond = currentDate.getSeconds(); // 获取当前秒数 console.log("当前时间:", currentYear, "年", currentMonth, "月", currentDay, "日", currentHour, "时", currentMinute, "分", currentSecond, "秒"); ``` 以上代码使用`Date`对象的各种方法来获取当前时间的年、月、日、小时、分钟和秒。在控制台使用`console.log()`方法打印输出当前时间。请注意,代码中的`getFullYear()`方法返回的是当前年份,而`getMonth()`方法返回的是从0开始的月份,需要自行加1。 如果你只想获取当前时间的字符串表示,可以使用`toLocaleString()`方法: ```javascript var currentTimeString = currentDate.toLocaleString(); // 获取当前时间的字符串表示 console.log("当前时间:", currentTimeString); ``` 以上代码中的`toLocaleString()`方法返回的是当前时间的字符串表示,包括日期和时间,格式可能因浏览器和操作系统而异。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值