1

私はあなたの年齢を (年、月、週、時間、分、秒で) 教えてくれるウェブサイトを作ろうとしています。私はそれらすべてを何ヶ月も何年も離れて働いています。月を取得すると、年を取得できるようになります(うまくいけば)が、月を取得する方法を考えるのに苦労しています。他の人にとっては簡単でした(生年月日と現在の日付の間に秒があれば、秒を分、時間、日などに変換するだけで済みました)が、数か月間は考慮する必要がありますそれらがすべて異なる長さであるという事実、およびうるう年 (現在は日付にも影響しません)。

4

2 に答える 2

1

これがあなたを助けることを願っています

// Set the unit values in milliseconds.
 var msecPerMinute = 1000 * 60;
 var msecPerHour = msecPerMinute * 60;
 var msecPerDay = msecPerHour * 24;

// Set a date and get the milliseconds
 var date = new Date('6/15/1990');
 var dateMsec = date.getTime();

// Set the date to January 1, at midnight, of the specified year.
   date.setMonth(0);
   date.setDate(1);
   date.setHours(0, 0, 0, 0);

// Get the difference in milliseconds.
   var interval = dateMsec - date.getTime();

// Calculate how many days the interval contains. Subtract that
// many days from the interval to determine the remainder.
   var days = Math.floor(interval / msecPerDay );
   interval = interval - (days * msecPerDay );

// Calculate the hours, minutes, and seconds.
   var hours = Math.floor(interval / msecPerHour );
   interval = interval - (hours * msecPerHour );

    var minutes = Math.floor(interval / msecPerMinute );
    interval = interval - (minutes * msecPerMinute );

    var seconds = Math.floor(interval / 1000 );

// Display the result.
   document.write(days + " days, " + hours + " hours, " + minutes + " minutes, " + seconds + " seconds.");

 //Output: 164 days, 23 hours, 0 minutes, 0 seconds.
于 2014-02-07T04:46:16.097 に答える