我在我Array.find的一個 JavaScript 處理程式中使用,發現有時沒有真實測驗,因此屬性設定為undefined. 我像這樣解決它:
const previous = this.value;
this.value = this.values.find((value) => value.Id === event.detail.valueId);
if (!this.value) {
this.value = previous;
}
有什么方法可以為該find方法提供默認值,以便在沒有找到任何內容時將其用作后備?
uj5u.com熱心網友回復:
??是的,如果您的左手陳述句為空或未定義,您可以使用語法回傳結果
this.value = this.values.find((value) => value.Id === event.detail.valueId) ?? true;
這稱為空值合并運算子,它是先前常見的一種更具體的情況,||因為只要某些東西為“假”,而不僅僅是 null 或未定義(例如,當 LHS 為 0 或假時),它就會回傳右側值
uj5u.com熱心網友回復:
您可以嘗試使用三元運算子。
const find_value = this.values.find((value) => value.Id === event.detail.valueId)
this.value = find_value ? find_value : previous
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/493433.html
標籤:javascript 数组
上一篇:生成具有唯一值的物件陣列
