オブジェクトから日付を取得し、ギガ秒(100億秒)を追加するプロトタイプ関数を作成しています。ここに私のコードは次のとおりです。this.userDate
に入力JavaScript:参照されたオブジェクトキーを変更せずにオブジェクトキー値をコピー
var Gigasecond = function(userDate){
this.userDate = userDate;
}
Gigasecond.prototype.date = function(){
var gigaDate = this.userDate;
var gigaSecond = Math.pow(10, 9);
console.log("This is the first console log: " + this.userDate);
//adding the billion seconds to the date
gigaDate.setFullYear(gigaDate.getFullYear() + Math.floor(gigaSecond/31536000));
gigaDate.setDate(gigaDate.getDate() + Math.floor((gigaSecond % 31536000)/86400));
gigaDate.setHours(gigaDate.getHours() + Math.floor(((gigaSecond % 31536000) % 86400)/3600));
gigaDate.setMinutes(gigaDate.getMinutes() + Math.floor((((gigaSecond % 31536000) % 86400) % 3600)/60));
gigaDate.setSeconds(gigaDate.getSeconds() + (((gigaSecond % 31536000) % 86400) % 3600) % 60);
console.log("this should equal the first console log: " + this.userDate);
}
日付がSunday, Sep 13, 2015 18:00
です。私はthis.userDate
を機能の別の部分にそのまま残したいと思っています。問題は、gigaDate
を変更すると、this.userDate
も変更されます。
This is the first console log: Sun Sep 13 2015 18:00:00 GMT-0600 (MDT) this should equal the first console log: Thu May 30 2047 19:46:40 GMT-0600 (MDT)
任意のヒント:ここではコンソール出力がありますか?
これは動作します!どうもありがとうございます。 – user5854440