我有一個名為 updateAnswer 的函式,它帶有多個動態引數。
updateAnswer(key, answer, array = false) {
if (array) {
if(this.answers.contains.find(element => element === answer)) {
//Delete item from array if already element already exists in this.answers.contains array.
} else {
Vue.set(this.answers, key, [...this.answers.contains, answer]);
}
} else {
Vue.set(this.answers, key, answer);
}
},
我想知道如果陣列中已存在該值,如何洗掉陣列中的專案。
uj5u.com熱心網友回復:
您可以使用名為的方法splice:
只需參考您的陣列并在括號中設定值,第一個是在位置上參考的,第二個是您要拼接/洗掉的資料數量。
該函式如下所示:
this.array.splice(value, value)
讓我們看一個例子 - 你的陣列food= [apple, banana, strawberry]比我使用的要多this.food.splice(1,1)..
我的陣列現在看起來像這樣food = [apple, strawberry]- 括號中的第一個值是位置,第二個是要洗掉的“數字”的數量。
希望這能幫到你!
uj5u.com熱心網友回復:
我想每個值this.answers.contains都是唯一的?
無論如何,如果您只想洗掉已存在的專案,我建議filter(). 它應該如下所示:
if(this.answers.contains.find(element => element === answer)) {
this.answers.contains = this.answers.contains.filter(c => c !== answer)
}
此外,if 條件if(this.answers.contains.find(element => element === answer))也可以替換為if(this.answers.contains.includes(answer))
希望能幫到你。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/359410.html
標籤:Vue.js
上一篇:將元內容轉換為json?[復制]
