В настоящее время у меня есть приложение, которое делает вызов для отдыха в api SharePoint, который дает мне последнюю измененную дату, а затем я сравниваю эту дату с датой, которую я сейчас храню как тег в управлении содержимым внутри слова doc. В настоящее время я использую метод New Date()
, чтобы попытаться сравнить две даты, однако я получаю два разных раза. Оба эти даты встречаются в формате UTC, но форматируются разные.Преобразование и сравнение DateTime, которые находятся в разных форматах
DateTime, что я получаю от SharePoint в этом формате: 2016-08-27T17:40:09Z
DateTime хранится в Элементы управления содержанием тега: 8/27/2016 5:40:09 PM
Текущий код:
for (var x = 0; x < contentControls.items.length; x++) {
itemUrl = "https://*tenant*.sharepoint.com/sites/*site*/_api/web/Lists/GetByTitle('*list*')/items?select=Title,Title&$filter=Title eq '" + contentControls.items[x].title + "'";
$.ajax({
type: "GET",
async: false,
url: itemUrl,
headers: {
"Authorization": "Bearer " + sharepointToken,
"accept": "application/json;odata=verbose"
},
success: function (data) {
var sharepointDateTime = data.d.results[0].Modified;
var contentControlDateTime = contentControls.items[0].tag;
var test1 = new Date(sharepointDateTime);
var test2 = new Date(contentControlDateTime);
if (test1 != test2) {
// custom code
}
},
error: function (error) {
console.log("Fetching list from SharePoint failed.");
}
})
}
Желаемая Результат
Я хотел бы иметь возможность сравнивать две даты в моем заявлении условия, и если они разные, я собираюсь сделать что-то внутри своего заявления. ОЧЕНЬ Важно не может зависеть от текущей часовой зоны пользователя. Я сравнивая UTC Время
Update
Я решил это путем изменения API, который штамповку элементы управления содержимым. Я работаю во временном хрусте, поэтому я не мог много обидеть на этом. Я видел, что теги управления содержимым не были отмечены часовым поясом, поэтому они сравнивали яблоки и апельсины. Однако я хотел бы оставить этот вопрос открытым, чтобы узнать, может ли кто-то найти решение на стороне клиента.
Эй, Тим, .value() дает мне временную метку эпохи, которую я также могу сравнить. Я решил это, изменив api, который запечатывает элементы управления содержимым. Я работаю во временном хрусте, поэтому я не мог много обидеть на этом. То, что я видел, теги управления контентом не были отмечены часовым поясом, поэтому они сравнивали яблоки и апельсины. Однако я хотел бы оставить этот вопрос открытым, чтобы узнать, может ли кто-то найти решение на стороне клиента. Спасибо. – EasyE