До сих пор мы узнали много концепций в MomentJS. Эта глава дает вам дополнительные примеры для лучшего понимания.
Отображение диапазона дат между двумя датами
Это пример, который отображает даты между двумя указанными датами.
<!DOCTYPE html> <html> <head> <script type="text/JavaScript" src="MomentJS.js"></script> <style> table, td { border: 1px solid #F1E8E8; border-collapse: collapse; padding: 4px; } table tr:nth-child(odd) { background-color: #CFCACA; } table tr:nth-child(even) { background-color: #C4B4B4; } </style> </head> <body> <h1>Dates display between 2014-05-01 and 2014-05-16</h1> <div id="container"> <table id="datedetails" ></table> </div> <script type="text/JavaScript"> function getDaterange(start, end, arr) { if (!moment(start).isSameOrAfter(end)) { if (arr.length==0) arr.push(moment(start).format("dddd, MMMM Do YYYY, h:mm:ss a")); var next = moment(start).add(1, 'd'); arr.push(next.format("dddd, MMMM Do YYYY, h:mm:ss a")); getDaterange(next, end, arr); } else { return arr; } return arr; } var a = getDaterange("2014-05-01", "2014-05-16", []); var tr = ""; for (var i = 0; i<a.length;i++ ) { tr += "<tr><td>"+a[i]+"</td></tr>"; } document.getElementById("datedetails").innerHTML = tr; </script> </body> </html>
Мы хотим отобразить все даты с 2014-05-01 по 2014-05-16 . Мы использовали запрос даты isSameOrAfter, добавление даты и формат даты, чтобы достичь того, чего мы хотим.
Выход
Показать воскресенье с 2014-05-01 по 2014-08-16
<!DOCTYPE html>
<html>
<head>
<script type="text/JavaScript" src="MomentJS.js"></script>
<style>
table, td {
border: 1px solid #F1E8E8;
border-collapse: collapse;
padding: 4px;
}
table tr:nth-child(odd) {
background-color: #CFCACA;
}
table tr:nth-child(even) {
background-color: #C4B4B4;
}
</style>
</head>
<body>
<h1>Sundays between 2014-05-01 and 2014-08-16</h1>
<div id="container">
<table id="datedetails"></table>
</div>
<script type="text/JavaScript">
function getDaterange(start, end, arr) {
if (!moment(start).isSameOrAfter(end)) {
if (arr.length==0) {
if (moment(start).format("dddd") === "Sunday") {
arr.push(moment(start).format("dddd, MMMM Do YYYY, h:mm:ss a"));
}
}
var next = moment(start).add(1, 'd');
if (moment(next).format("dddd") === "Sunday") {
arr.push(next.format("dddd, MMMM Do YYYY, h:mm:ss a"));
}
getDaterange(next, end, arr);
} else {
return arr;
}
return arr;
}
var a = getDaterange("2014-05-01", "2014-08-16", []);
var tr = "";
for (var i = 0; i<a.length;i++ ) {
tr += "<tr><td>"+a[i]+"</td></tr>";
}
document.getElementById("datedetails").innerHTML = tr;
</script>
</body>
</html>
Выход
Отображать детали даты в соответствии с локалью
Здесь мы используем скрипт moment.locale, который имеет все локали.

