vue如何判断数组中的对象是否包含某个值
作者: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 调用这些方法
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。