我想检查我的条形码字符串是否在现有的条形码阵列中。 我发现Javascript中有一个名为include()的函数。
所以我尝试了以下操作:
data() {
return {
form: {
items: [ //this is the array what I want to check
],
//...
},
}
那很好。 但是我的版本:
.then(response => {
barcode = response.data;
if (barcode.length > 0)
if(!this.form.items.includes(barcode)) //THIS DON'T WORK
this.form.items.push(barcode[0]);
else
this.$message({
message: 'Wrong Barcode!',
type: 'warning'
})
})
在我的一项功能中,我有以下片段:
{{1}}
该数组为空,因为每次使用扫描仪时我都会向其中推送元素。
答案 0 :(得分:2)
我假设您的条形码是数组,而item是条形码的数组。 试试这个
if (barcode.length > 0)
if(!this.form.items.includes(barcode[0]))
this.form.items.push(barcode[0]);
答案 1 :(得分:0)
据我所知,条形码是一个数组,您只想推送尚未收集的元素(避免重复)。
if (barcode.length > 0) {
barcode.forEach(item => {
if(!this.form.items.some(el => el === item)) {
this.form.items.push(item);
}
})
}