繁体   English   中英

Javascript 代码不起作用,但没有错误记录到控制台?

[英]Javascript code doesn't work, but no error was logged to console?

function fetchAPI(string) {
  return fetch(string)
    .then(function(response) {
      return response.json();
    })
    .then(function(json) {
      return json;
    });
}

try {
  fetchAPI(`https://api.hypixel.net/skyblock/auctions?key=${apikey}`).then(
    function(result1) {
      delete result1.success;
      delete result1.page;
      delete result1.totalauctions;
      delete result1.lastupdated;
      var pages = result1.totalpages;
      delete result1.totalpages;
      for (page = 0; page < pages; page++) {
        fetchAPI(
          `https://api.hypixel.net/skyblock/auctions?key=${apikey}&page=${page}`
        ).then(function(results) {
          delete results.success;
          delete results.page;
          delete results.totalauctions;
          delete results.lastupdated;
          delete results.totalpages;
          var i = 0;
          for (i = 0; i < results.auctions.length; i++) {
            if (results.auctions[i].item_name != "Enchanted Book") {
              delete results.auctions[i];
            }
          }
          console.log(results);
        });
      }
    }
  );
} catch (error) {
  console.log(error);
}

代码查询 API (api.hypixel.net),它应该过滤响应 (item_name: 'Enchanted Book'),将变量记录到控制台,然后在下一页重复(每个页面 = 不同的 API 查询)

正如标题所说,运行代码时不会执行任何操作,但不会引发错误。 这是什么原因?

您只需要使用正确的属性名称。 例如, totalPages ,而不是totalpages (案例很重要)。

尝试这个:

function fetchAPI(string) {
  return fetch(string)
    .then(function(response) {
      return response.json();
    })
    .then(function(json) {
      return json;
    });
}

try {
  fetchAPI(`https://api.hypixel.net/skyblock/auctions?key=${apikey}`).then(
    function(result1) {
      console.log(result1);
      delete result1.success;
      delete result1.page;
      delete result1.totalAuctions;
      delete result1.lastUpdated;
      var pages = result1.totalPages;
      delete result1.totalPages;
      for (var page = 0; page < pages; page++) {
        fetchAPI(
          `https://api.hypixel.net/skyblock/auctions?key=${apikey}&page=${page}`
        ).then(function(results) {
          delete results.success;
          delete results.page;
          delete results.totalAuctions;
          delete results.lastUpdated;
          delete results.totalPages;
          var i = 0;
          for (i = 0; i < results.auctions.length; i++) {
            if (results.auctions[i].item_name != "Enchanted Book") {
              delete results.auctions[i];
            }
          }
          console.log(results);
        });
      }
    }
  );
} catch (error) {
  console.log(error);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM