javascript - !== -1 有什么意义?

标签 javascript

我目前是一名学习 Javascript 的学生,我的工作中出现了以下代码:

var currentInventory = [
  {
    name: 'Brunello Cucinelli',
    shoes: [
      {name: 'tasselled black low-top lace-up', price: 1000},
      {name: 'tasselled green low-top lace-up', price: 1100},
      {name: 'plain beige suede moccasin', price: 950},
      {name: 'plain olive suede moccasin', price: 1050}
    ]
  },
  {
    name: 'Gucci',
    shoes: [
      {name: 'red leather laced sneakers', price: 800},
      {name: 'black leather laced sneakers', price: 900}
    ]
  }
];

function filterBlackShoes(shoeList) {
  return shoeList.filter(function(shoe){
    return shoe.name.indexOf('black') !== -1;
  })
}

function renderBlackShoesForDesigner(designer, shoeList) {
  shoeList = filterBlackShoes(shoeList);
    return shoeList.map(function(shoe){
        return [designer, shoe.name, shoe.price].join(', ')
    })
}

function renderFilteredGoodsStringForDesigner(designerObject) {
  return renderBlackShoesForDesigner(designerObject.name, 
designerObject.shoes).join('\n');
}

function renderInventory(inventory) {
  return inventory.map(function(designerObject) {
    return renderFilteredGoodsStringForDesigner(designerObject);
  }).join('\n');
}

所以我明白了代码的作用,它过滤黑色鞋子并返回该信息。除了 !== -1 的作用外,我了解代码工作原理的所有方面。我会去找我的老师,但他们目前处于离线状态。有人可以向我解释一下它的重要性吗?

最佳答案

indexOf 在找不到项目时返回 -1!== 是一个严格的不等于运算符。所以那里的声明试图说找到了该项目。

关于javascript - !== -1 有什么意义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45291775/

相关文章:

javascript - CSS/JS 删除(自动)换行符/文本换行前的空格

javascript - Highcharts 如何根据点数创建图例

javascript - amphtml 在引导模式中显示 amp-img

javascript - 如何使用javascript查找兄弟标签

javascript - 显示带有地址的 google.maps.Polyline

javascript - href onclick= 不适用于所有子页面

javascript - knockout : ko observable without a default value

javascript - 日期天数间隔不应超过 20 天

javascript - 图像按顺序显示,带有动画和延迟(淡入和上滑)

javascript - Selenium 测试 : webdriver. 多次等待调用 promise