我不確定如何命名這個問題,但它涉及一種模式,其中||運算子用于將一系列未定義的值決議為第一個定義的值。
這些是等價的嗎?
export function getRuntime(): Runtime {
return runtime || findWindow() || mockWindow;
}
和
export function getRuntime(): Runtime {
if (runtime) return runtime;
if (findWindow()) return findWindow();
return mockWindow;
}
uj5u.com熱心網友回復:
兩個代碼片段都做同樣的事情,因為||andreturn只是做與從if陳述句回傳相同的事情。
兩者之間的唯一區別是,如果findWindow()回傳一個true在 JavaScript 中考慮的值,它將運行兩次。這個“問題”只發生在第二個。
uj5u.com熱心網友回復:
是的,這兩個函式做同樣的事情。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/452953.html
標籤:javascript 打字稿
