Итерация данных, полученных из ajax / json

Ниже приведен тип данных, которые я получаю через ajax.

[{"model": "blogapp.articles", "pk": 1, "fields": {"title": "Rainbow Buildings in Tokyo", "slug": "Rainbow-Buildings-in-Tokyo"}}, {"model": "blogapp.articles", "pk": 2, "fields": {"title": "4 Cool Cube Facades", "slug": "4-Cool-Cube-Facades"}}]

Как я могу перебрать эти данные, используя .each, чтобы получить название и slug для каждой записи?

Нижеприведенный код дает мне синтаксическую ошибку в данных.

app.js

$(document).ready(function () {
  $(".tag-nav-links").on("click", function (e) {
    e.stopPropagation();
    return $.ajax({
      type: "POST",
      url: "",
      dataType: "json",
      data: { filter: `${e.target.textContent}` },
      success: function (data) {
        var html = "";
        $(data).each(function (index, value) {
          html += "<h4>{{" + value.title + "}}</h4>";
        });
        $("trial").append(html);
      },
    });
  });
});

Функция jQuery (которую вы используете вот так: $(data)) - это не то, что вам нужно. (Возможно, вы имели в виду $.each(data, ...), но в наши дни в этом нет необходимости). Если data действительно является массивом, как показано на рисунке, просто используйте map для него, а затем соедините результат с пустой строкой:

success: function (data) {
    $("trial").append(data.map(value => {
        return "<h4>{{" + value.fields.title + "]]</h4>";
    }).join(""));
},
Вернуться на верх