我有一個函數,獲取天數,直到今天。但是,它的工作原理是,我使用moment.js從JSON數據中編寫並格式化日期,我認爲這是導致衝突的原因。有沒有辦法使用moment.js做同樣的事情?計算幾天直到今天moment.js
這是工作的JavaScript:http://jsfiddle.net/infatti/XeqPT/
// Count days due
function daysUntil(year, month, day) {
var now = new Date(),
dateEnd = new Date(year, month - 1, day), // months are zero-based
days = (dateEnd - now)/1000/60/60/24; // convert milliseconds to days
return Math.round(days);
}
使用moment.js如何同樣的事情做什麼?
如果有興趣,這裏是我如何拉動日期,當它不工作。
<span class="due-date" data-bind="textualDate: DueDate"></span>
ko.bindingHandlers.textualDate = {
update: function (element, valueAccessor, allBindingsAccessor, viewModel, bindingContext) {
var valueUnwrapped = ko.utils.unwrapObservable(valueAccessor());
var textContent = moment(valueUnwrapped).format("MM/DD/YYYY");
ko.bindingHandlers.text.update(element, function() { return textContent; });
}
};
*「我使用的是moment.js來編寫和格式化來自JSON數據的日期,我認爲這是導致衝突。」*你爲什麼這麼認爲?計算日期並輸出它是完全無關的操作。 – 2013-05-07 17:09:05
@ alex23使用日期庫有很多原因。日期/時間的數學是醜陋的,充滿了邊緣情況(可變月份長度,時區,夏令時,閏年)。 – 2013-05-07 17:09:22
當我手動將日期放入html中時,它可以正常工作。當我將數據綁定到html中時,它不起作用。 – simple 2013-05-07 17:12:01