在这里简单的做个记录,有需要自取(小编能力有限,如有问题勿喷,有不足之处希望大牛能指出,谢谢)
1、话不多说直接上代码
<template>
<div>
<el-button size=" mini" type="primary" :disabled="!disabled">按钮</el-button>
</div>
</template>
<script>
export default {
data() {
return {
date: ['1', '2', '3']
}
},
computed: {
disabled() {
return this.date.some(i => i == '3')
},
}
}
</script>
2、以下还有其他 方法可用于判断数组中是否包含某个值
①for循环
<script>
export default {
methods: {
// 方法一for循环判断
filtration() {
let data = ['1', '2', '3']
for (let i = 0; i < data.length; i++) {
if (data[i] == '3') {
return true
}
}
return false
},
// 方法二也是for循环
filtration2(date, value) {
for (let i = 0; i < data.length; i++) {
if (data[i] == value) {
return true
}
}
return false
},
// 需要使用的地方
use() {
this.filtration()//不传参数
this.filtration2(['1', '2', '3'], '3')//传参
},
}
}
</script>
②includes
<script>
export default {
methods: {
//直接调用此方法就可以使用
filtration() {
const date= [1, 2, 3, 4, 5]
let a = date.includes(3)
console.log(a)
},
}
}
</script>
③indexOf
<script>
export default {
methods: {
filtration() {
const date= [1, 2, 3, 4, 5] // 定义
let a = date.indexOf(3) // 方法
console.log(a) // 输出2 ,不为-1则表示存在
},
}
}
</script>
④filter
<script>
export default {
methods: {
filtration() {
const date= [1, 2, 3, 4, 5] // 定义
let a = date.filter(c => c == 3).length > 0 // 使用
console.log(a)//为true表示存在,false为不存在
},
}
}
</script>
⑤find
<script>
export default {
methods: {
filtration() {
const date = [1, 2, 3, 4, 5] // 定义
let a = date.find(c => {
return c === 3
}) // 使用
console.log(a) //true存在,false不存在
},
}
}
</script>
⑥Set中的has
<script>
export default {
methods: {
filtration() {
const date = [1, 2, 3, 4, 5] // 定义
let a = new Set(date).has(3) // 使用
console.log(a)//true存在,false不存在
},
}
}
</script>