簡體   English   中英

如何在不使程序崩潰的情況下檢查不存在的變量的值?

[英]How do I check the value of a non-existent variable without crashing the program?

我從 HTTP 得到一個 JSON output。 然后我使用來自 nodejs 的 JSON.parse。

output 基本上是這樣的:

items: [
    snippet: {
        foo: "bar",
        bar: "foo
    }
    snippet: {
        foo: "bar",
        bar: "foo
    }
    snippet: {
        foo: "bar",
        bar: "foo
    }
]

我的代碼是這樣的:

foo1 = items[0].snippet.foo
bar1 = items[0].snippet.bar

這個變量聲明一切正常,直到我得到有時可能不存在的變量。

foo4 = items[4].snippet.foo

當然,這里是不存在的。 我以為我可以簡單地做一個 if(foo4 == 'Null') 然后設置 foo4 = 'not existing' 這樣它以后就不會崩潰我的程序。 但是,當聲明這個變量本身時程序崩潰了......我怎樣才能防止這種情況發生?

在 ES2020 中有一個很酷的特性叫做optional chainingnullish coalescing ,所以你可以嘗試將它們結合起來:

foo4 = items[4]?.snippet?.foo ?? 'not existing'

因此,如果items[4]是 null 或未定義的部分items[4]?.snippet?.foo會將 undefined 設置為 foo4 然后將 operator ?? 將默認值添加到變量 foo 4

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM