Можно ли использовать регулярные выражения с JSON и AJAX? - PullRequest
0 голосов
/ 05 января 2019

Проблема

В вызове AJAX я пытаюсь получить объект JSON с добавленным автоматически сгенерированным идентификатором. Можно ли использовать регулярное выражение для выбора объекта JSON, который начинается с определенной строки?

например. ниже таргетинга announcements_414988813

JQuery

const parent = $('.c-banner');
let data;

$.getJSON('path_to_data.json', function (result) {
    const data = result["jcr:content"]["parsys"];
    const announcement = data["/^/announcements"];
    let date = announcement.eventDate;

    let _html = "";
    _html += '<p>' + date + '</p>';

    parent.append(_html);
});

1011 * JSON * { "jcr:content": { "parsys": { "announcements_414988813": { "eventDate": "Fri Jan 18 2019 00:00:00 GMT-1000", "title": "Pizza Day!", } } } }

1 Ответ

0 голосов
/ 05 января 2019

После того, как вы извлекли объект data, вы сможете просмотреть его ключи и найти тот, который соответствует.

var announcement = {}

for (key in data) {
    if (key.match(/^announcements/)) {
        announcement = data[key];
    }
}

Обратите внимание, что если у вашего объекта parsys есть несколько объявлений, это даст вам последнее. announcement просто останется пустым объектом, если не найдет его. (Выйдите из цикла, если вы хотите первый, или сохраните их все в массиве, если они вам нужны.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...