ブラウザのJavaScriptでの日付計算の問題。 日から、何に基づいていない= 2日付計算 - 夏時間(DST)とタイムゾーンの問題 - トルコ
入力日間のJavaScript = 30/10/2016 号にカレンダーコンポーネントを使用して、選択した日から
日付日&の特許 - 3つのパラメータがあります。上記の入力ごとに計算する必要があります。開始日& "To Date"の値は01/11/2016である必要がありますが、間違った計算により31/10/2016が表示されます。
タイムゾーン - イスタンブール、トルコ
コード切り取ら用の画像の下に参照してください - それはコードから明らかなように
は、ライブラリが使用されているJavaScriptのそのプロトタイプを切り取ら。
dateUtil.prototype.addDays=function(date,noofDays)
{
\t var _dateData=date.split("/");
\t var _date=eval(_dateData[0]);
\t var _month=eval(_dateData[1]);
\t var _year=eval(_dateData[2]);
\t var newFormatedDate = new Date(""+_month+"/"+_date+"/"+_year);
var newAddedDate=newFormatedDate.getTime() + noofDays*24*60*60*1000;
var theDate = new Date(newAddedDate);
var dd = theDate.getDate();
var mm = theDate.getMonth()+1; // 0 based
if(mm<10)
mm="0"+mm;
var yy = theDate.getYear();
if (yy < 1000)
yy +=1900; // Y2K fix
var addedDate=""+dd+"/"+mm+"/"+yy;
\t return addedDate;
}
noofDays * 24 * 60 * 60 * 1000年のロジックは、DSTが考慮されていない問題であるようです。 同じコードで異なる日付形式の2つのタイムゾーンが表示されます。
ご指導をお願いします。
編集: JavaScriptコードが追加されました。
momentjs(http://momentjs.com/docs/)を使用すると、かなり頭痛を軽減できます。時間をかけて作業することに専念した巨大な強力なライブラリです。 –
関連するすべてのコードは、画像ではなく質問自体に含める必要があります。 –
'Java'との衝突を避けるために' JavaScript'を正しく綴るように注意してください。 –