这个JavaScript语句如何计算日期?

Bob*_*lan 6 javascript google-chrome google-chrome-extension

所以当我遇到这些代码时,我正在研究如何使用Google Chrome扩展程序显示桌面通知:

var time = /(..)(:..)/(Date());              // The prettyprinted time.
var hour = time[1] % 12 || 12;               // The prettyprinted hour.
var period = time[1] < 12 ? 'a.m.' : 'p.m.'; // The period of the day.
Run Code Online (Sandbox Code Playgroud)

这有什么作用呢?

Jam*_*mes 9

很有意思,我之前没见过:

/regex/(...);
Run Code Online (Sandbox Code Playgroud)

编辑:看到这个!

这个:

/(..)(:..)/(Date());
// seems to emulate the functionality of exec()
Run Code Online (Sandbox Code Playgroud)

将返回正则表达式的匹配(匹配组的数组)/(..)(:..)/,与string(Date()):

"Thu Jul 08 2010 09:40:38 GMT+0200 (W. Europe Daylight Time)"
Run Code Online (Sandbox Code Playgroud)

(或者恰好是什么时候)

在这种情况下,返回的数组(匹配)是:

["09:40", "09", ":40"]
Run Code Online (Sandbox Code Playgroud)

这一行:

var hour = time[1] % 12 || 12; 
Run Code Online (Sandbox Code Playgroud)

......简单地确定小时.如果小时为(即0),则默认为12- 这使得下一个语句可以返回正确的am/pm后缀.(12:00是am).