我有一份全球山脉名单.我想过滤掉法国所有的山脉.为此,我需要判断iso3166_1Alpha2是否设置为FR.问题是,并不是所有的山都有价值.我认为该脚本在达到空值后会死掉,因为这是错误:

Uncaught (in promise) TypeError: Cannot read properties of null (reading 'iso3166_1Alpha2')

这是我的 playbook .好像我的!== null美元支票不起作用了,而且不知道为什么.

function addJSON() {
  let url = "https://development.example.com/admin/mtn/json/mtn_areas.geojson";
  fetch(url)
    .then(function (response) {
      return response.json();
    })
    .then(function (data) {
      let mtn = data.features;
      for (var i = 0; i < mtn.length; i++) {
        if (mtn[i].properties.location.iso3166_1Alpha2 !== null) {
          x = mtn[i].properties.location.iso3166_1Alpha2;
          console.log(x);
        }
      }
    });
}

推荐答案

似乎你得到的物品没有location属性,在这种情况下,你的条件将无助于阻止它.try 按如下方式更改您的函数.请注意,我使用的是Optional chaining,即?.语法,以避免任何nullundifined属性.

function addJSON() {
  let url = "https://development.example.com/admin/mtn/json/mtn_areas.geojson";
  fetch(url)
    .then(function (response) {
      return response.json();
    })
    .then(function (data) {
      let mtn = data.features;
      for (var i = 0; i < mtn.length; i++) {
        if (mtn[i]?.properties?.location?.iso3166_1Alpha2) {
          x = mtn[i].properties.location.iso3166_1Alpha2;
          console.log(x);
        }
      }
    });
}

Javascript相关问答推荐

窗口.getComputedStyle()在MutationObserver中不起作用

django无法解析余数:[0] from carray[0]'

判断表格单元格中是否存在文本框

配置WebAssembly/Emscripten本地生成问题

更改预请求脚本中重用的JSON主体变量- Postman

第二次更新文本输入字段后,Reaction崩溃

400 bad request error posting through node-fetch

Jest toHaveBeenNthCalledWith返回当前设置的变量值,而不是调用时的值

每次重新呈现时调用useState initialValue函数

如何使用Astro优化大图像?

更改agGRID/Reaction中的单元格格式

按特定顺序将4个数组组合在一起,按ID分组

bootstrap S JS赢得了REACT中的函数/加载

如何正确地在ComponentWillUnmount中卸载状态以避免内存泄漏?

需要从对象生成列表

如何在单击链接时设置一个JavaScript变量(以打开弹出窗口的特定部分)

Google OAuth 2.0库和跨域开放程序的问题-策略错误

单击子按钮时将活动切换类添加到父分区

带有JS模块模式的Rails的Importmap错误:";Net::ERR_ABORTED 404(未找到)&Quot;

使用JavaScript或PHP从div ID值创建锚标记和链接