New Date()给我错误的年份-Windows 10和VS2015

时间:2019-02-15 07:12:53

标签: javascript date new-operator

// javascript
var date1 = new Date('1/1/19');
var y = date1.getYear();
var fy = date1.getFullYear();

运行代码时,我得到了(Windows 10,VS2015,MVC5,Jquery 3.3.1,Bootstrap 4.1:

y = '19'
fy = '1919'

我应该得到:

y = "119"
fy = "2019"

我确实去了不同的网站,并且运行了上面的代码,但得到的结果是正确的,但不是从我的计算机上获得的。

任何人都可以确认此问题还是仅仅是我的计算机问题?

1 个答案:

答案 0 :(得分:0)

您可以找到一些信息here。例如,您可以找到

  

上个世纪-一位和两位数年份将被解释为19xx:

日期输入格式的完整说明可用here

简而言之,为了从2019调用中获取getFullYear(),您应该初始化Date实例,并提供类似01/01/2019的内容。

IMHO很有用,为了避免时区出现问题和误解,请采取一种简单,安全的策略:使用Date(String)构造函数支持的ISO 8601 format来引用日期。

对于高级用途,您可以通过moment.js之类的库与日期进行交互,该库在标准日期API的基础上提供了自定义,简单且可用的API(并提供了用于显式处理时区的扩展)。