vue如何判断数组中的对象是否包含某个值

 更新时间:2022年08月09日 11:53:18   作者:mfylove  
这篇文章主要介绍了vue如何判断数组中的对象是否包含某个值,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

判断数组中的对象是否包含某个值

xxx (array, str) {
     var index = array.findIndex(item => item.id=== str)
     // var index = array.indexOf(str)  // 当数组里的对象为字符串时用这个方法更简单
     return index  // -1 说明array中不存在id为str的对象
}

判断对象是否包含某个属性,el-table formatter判断

当前的业务逻辑是表格中大概有四五个字段需要判断,如果是null或者0就返回暂无数据,有值的话就返回对应的值,如下图:

由于需要进行的操作是一样的,所以用一个formatter就可以了,所以要判断对应的字段,代码如下:

1.表格部分

<el-table-column
  label="报送数量"
  prop="vulWarnNum"
  width="140"
  align="center"
  :formatter="dataFormat"
/>

2.方法体部分

dataFormat(row, column) {
      const field = column.property
      if (Object.prototype.hasOwnProperty.call(row, field)) {
        if (row[field] == null || row[field] === 0) {
          return '暂不要求'
        }
      }
      return row[field]
    }

其中Object.prototype.hasOwnProperty.call(row, field)就是判断row中是否包含对应的字段名称

原先的写法是

row.hasOwnProperty(field)

现在换成

Object.prototype.hasOwnProperty.call(row, field)

但是报错 ESLint: Do not access Object.prototype method 'hasOwnProperty' from target object.(no-prototype-builtins)

所以最好是从 Object.prototype 调用这些方法

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • vue实现按钮文字动态改变

    vue实现按钮文字动态改变

    这篇文章主要介绍了vue实现按钮文字动态改变方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-11-11
  • 结合el-upload组件实现大文件分片上传功能

    结合el-upload组件实现大文件分片上传功能

    Element UI的el-upload上传组件相信各位小伙伴都已经非常熟悉,最近接了一个新需求,要求在el-upload组件基础上实现分片上传功能,即小于等于5M文件正常上传,大于5M文件切成5M每片上传,那么这个功能怎么实现呢?一起看看吧
    2022-09-09
  • c++游戏教程使用easyx做出大飞机

    c++游戏教程使用easyx做出大飞机

    这篇文章主要为大家介绍了c++游戏教程使用easyx实现大飞机示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-08-08
  • vue3+elementui-plus实现无限递归菜单示例代码

    vue3+elementui-plus实现无限递归菜单示例代码

    这篇文章主要介绍了vue3+elementui-plus实现无限递归菜单,当一个组件的 key 值发生变化时,Vue 会认为这是一个新的组件实例,会强制重新创建和渲染这个组件,本文通过示例代码详细讲解,需要的朋友可以参考下
    2024-04-04
  • VSCode使用之Vue工程配置eslint

    VSCode使用之Vue工程配置eslint

    这篇文章主要介绍了VSCode使用之Vue工程配置eslint,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-04-04
  • vue生成gzip压缩包部署到nginx的示例

    vue生成gzip压缩包部署到nginx的示例

    vue 生成gzip压缩包部署到nginx服务器,如果我们把web网站资源进行gzip压缩后进行传输给浏览器,这样就能加快网站资源的加载速度,这篇文章主要介绍了vue生成gzip压缩包部署到nginx,需要的朋友可以参考下
    2022-12-12
  • vue配置文件实现代理v2版本的方法

    vue配置文件实现代理v2版本的方法

    这篇文章主要介绍了vue配置文件实现代理v2版本的方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-06-06
  • 如何使用RoughViz可视化Vue.js中的草绘图表

    如何使用RoughViz可视化Vue.js中的草绘图表

    这篇文章主要介绍了如何使用RoughViz可视化Vue.js中的草绘图表,帮助大家更好的理解和使用roughViz,感兴趣的朋友可以了解下
    2021-01-01
  • vue3中使用jsx的实现步骤

    vue3中使用jsx的实现步骤

    本文主要介绍了vue3中使用jsx的实现步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07
  • vue使用elementUI组件实现分页效果

    vue使用elementUI组件实现分页效果

    分页在展示数据列表的场景肯定是非常多的,一般的项目开发中,数据量特别大,一般都是后端接口直接处理分页返回,前端直接调用即可,本文给大家介绍了vue使用elementUI组件实现分页效果,需要的朋友可以参考下
    2023-12-12

最新评论