需求: 判断数组里的每一项是否有taskCount
字段
数据格式
boxList:[
{
type:1,status:0, taskCount:'',barcode:'001',},
{
type:2,status:2, taskCount:0,barcode:'052',},
{
type:3,status:1, taskCount:120,barcode:'034',}
]
<div v-for="items in boxList" :key="items.groupId" >
<div class="lock-task" v-if="item.hasOwnProperty('taskCount')">
</div>
</div>
item.hasOwnProperty(‘taskCount’)
一、判断Object中是否存在某个key(键)
let obj={
name:'张三',
sex:'男'
}
js方法
方法1:
Object.hasOwnProperty.call(obj,'name'); // true
Object.hasOwnProperty.call(obj,'age'); // false
方法2:
obj.hasOwnProperty('name'); // true
obj.hasOwnProperty('age'); // false
方法3:
'name' in obj; // true
'age' in obj; // false
二、判断数组中的Object中是否存在某个key(键)
2.1. 判断数组中的Object中是否存在某个key(键)
arr = [
{
name:'张三', sex:'男'},
{
name:'李四', sex:'男'},
{
name:'王五', sex:'男'},
];
js方法
方法1:
arr.some(item=>Object.hasOwnProperty.call(item,'name')); // true
arr.some(item=>Object.hasOwnProperty.call(item,'age')); // false
方法2:
arr.some(item=>item.hasOwnProperty('name')); // true
arr.some(item=>item.hasOwnProperty('age')); // false
方法3:
arr.some(item=>'name' in item); // true
arr.some(item=>'age' in item); // false
2.2. 判断数组中的Object中是否存在某个满足条件的元素
arr = [
{
name:'张三', sex:'男', age:11},
{
name:'李四', sex:'男', age:22},
];
JS方法:
arr.some(item => item.name === '张三'); // true
arr.some(item => item.name === '王五'); // false
2.3 判断数组中的Object中是否存在某个满足条件的元素,并返回所有满足条件的元素
arr = [
{
name:'张三', sex:'男', age:11},
{
name:'李四', sex:'男', age:22},
{
name:'王五', sex:'男', age:33},
];
js方法
const list = arr.filter(item => item.age === 11);
console.log(list); // [{ name: '张三', sex: '男', age: 11 },{ name: '王五', sex: '男', age: 11 }]