2017-10-24 25 views
1

現在の表示日に12時間を追加するにはどうすればよいですか?私は私のウェブサイトにプロモーションオファーをしたい、このプロモーションオファーは現在の時間から12時間を閉じるでしょう。 異なるタイムスロットを持つ異なる国の人々がこれを訪れることになるので、タイムスロットに十分でなければなりません。どうすればこれを達成できますか?現在の日付に12時間を追加するには?

<html> 
 
<font size="+1.5"><p id="date"></p></font> 
 
<script> 
 
n = new Date(); 
 
y = n.getFullYear(); 
 
m = n.getMonth() + 1; 
 
d = n.getDate(); 
 
document.getElementById("date").innerHTML = m + "/" + d + "/" + y; 
 
</script> 
 

 

 
</html>

答えて

0

あなたはこの例のように、setTime()を使用することができます。

n = new Date(); 
 
n.setTime(n.getTime() + (12 * 60 * 60 * 1000)); 
 
y = n.getFullYear(); 
 
m = n.getMonth() + 1; 
 
d = n.getDate(); 
 
h = n.getHours(); 
 
mi = n.getMinutes(); 
 
document.getElementById("date").innerHTML = m + "/" + d + "/" + y + " " + h + ":" + mi;
<html> 
 
<font size="+1.5"><p id="date"></p></font> 
 
</html>

1

この

Date.prototype.addHours= function(h){ 
    this.setHours(this.getHours()+h); 
    return this; 
} 

ちょうどnew Date()にaddHourse関数を呼び出すと、追加したい時間数を渡してみてください。例えば、

alert(new Date().addHours(12)); 

大丈夫です。ここに完全なコードがあります。

Date.prototype.addHours = function(h) { 
 
    this.setHours(this.getHours() + h); 
 
    return this; 
 
} 
 

 
function getFormattedDate(date) { 
 
    var year = date.getFullYear(); 
 

 
    var month = (1 + date.getMonth()).toString(); 
 
    month = month.length > 1 ? month : '0' + month; 
 

 
    var day = date.getDate().toString(); 
 
    day = day.length > 1 ? day : '0' + day; 
 

 
    return month + '/' + day + '/' + year; 
 
} 
 

 
var date = getFormattedDate(new Date().addHours(12)); 
 
var date2 = new Date().addHours(12); 
 
document.getElementById("date").innerHTML = date; 
 
document.getElementById("date2").innerHTML = date2;
<html> 
 
<font size="+1.5"> 
 
    <p id="date"></p> 
 
</font> 
 
<font size="+1.5"> 
 
    <p id="date2"></p> 
 
</font> 
 
</html>

これはデフォルトの形式でフォーマットされた日付と日付を印刷します。あなたは好きなものと一緒に行くことができます。