-3

Javascriptを使用して年を取得しようとしています。新しい Date() をインスタンス化しました。月日は問題なく取得できました。その年は、本来あるべきように機能していません。すべてのドキュメントとコメントが getYear() ではなく getFullYear() と言うように、私は getFullYear() を使用していますが、2017 ではなく 117 を取得します。コンソールで「 (new Date()).getFullYear() 」を実行すると、2017 になります。

コンソールで Task 関数を宣言してから、新しい Task オブジェクトをインスタンス化すると、すべてが正常に機能します。task オブジェクトの year プロパティは 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

4

1 に答える 1