Javascript Date.getFullYear() 行为与 Date.getYear() 相同
Posted
技术标签:
【中文标题】Javascript Date.getFullYear() 行为与 Date.getYear() 相同【英文标题】:Javascript Date.getFullYear() behaving same as Date.getYear() 【发布时间】:2017-09-28 02:17:27 【问题描述】:我正在尝试使用 javascript 来获取年份。我实例化了一个新的 Date()。我能够毫无问题地获得月份和日期。这一年没有按应有的方式工作。我正在使用 getFullYear() 正如所有文档和 cmets 所说的那样,而不是 getYear() 但是,我得到 117 而不是 2017。根据我读过的所有内容,getYear() 应该返回 117,而 getFullYear() 应该返回 2017。控制台,如果我运行 ' (new Date()).getFullYear() ' 我会得到 2017 年。
如果我在控制台中声明 Task 函数,然后实例化一个新的 Task 对象,一切正常。任务对象的年份属性为 2017。
我做错了什么?
function Task(task)
var d = new Date();
this.task = task;
this.date = d.getDate();
this.month = d.getMonth();
this.year = d.getFullYear()
this.complete = false;
var task = new Task("task one");
['date', 'month', 'year'].forEach(function(p)
console.log(p + ' is ' + task[p]);
);
// date is 28
// month is 8
// year is 117
【问题讨论】:
你设置task.year = 117
?
如果 console.log(task.year)
我得到 2017 年。当然,在您覆盖函数中的值之前。
不,我只是在写每个属性的最终结果。我看到它很混乱,我会编辑。
将您的代码转换为可运行的 sn-p 不会显示声明的错误。投票以“无法复制”结束。
你用的是什么浏览器?它对我来说很好用
【参考方案1】:
我使用了不正确的 js 文件。我用 getFullYear() 更新的文件不是正在运行的文件。正在运行的是使用 getYear()。
【讨论】:
以上是关于Javascript Date.getFullYear() 行为与 Date.getYear() 相同的主要内容,如果未能解决你的问题,请参考以下文章
javascript JavaScript isset()等效: - JavaScript
JavaScript 使用JavaScript更改CSS(JavaScript)