首頁 >web前端 >js教程 >如何優雅地有條件地在 JavaScript 物件上新增成員?

如何優雅地有條件地在 JavaScript 物件上新增成員?

Barbara Streisand
Barbara Streisand原創
2024-12-19 21:40:12913瀏覽

How Can I Conditionally Add Members to JavaScript Objects Elegantly?

JavaScript 物件中的條件成員插入:現代解決方案

而使用if 語句有條件地在物件中加入成員的傳統方法是簡單明了,它可能不慣用且冗長。更優雅的解決方案是在物件字面量中利用條件三元運算子 ?: 。但是,當條件評估為 false 時,此方法會導致未定義的成員值。

要解決此問題,更可靠的解決方案是使用擴充運算子 (...) 與邏輯 AND 短路評估結合使用。此技術允許有條件地在單一表達式中包含多個成員:

const a = {
    ...(someCondition1 && {b: 5}),
    ...(someCondition2 && {c: 6}),
    ...(someCondition3 && {d: 7}),
    // ... and so on
};

在這種情況下,展開運算子將物件文字擴展為封閉物件 a 內的各個屬性。邏輯 AND 運算子 && 確保僅當其對應的條件評估為 true 時才包含每個屬性。

此方法透過短路評估將 false 條件強制為未定義,從而避免未定義的屬性值。因此,產生的物件將僅包含與滿足條件相對應的屬性。

以上是如何優雅地有條件地在 JavaScript 物件上新增成員?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn