我在網上看到幾個 JavaScript 存盤庫,其中一個物件是用以下語法創建的
const myVar
const myObj = (myVar && {myVar})
我想知道為什么我們需要使用這種語法,而只需像這樣宣告物件就可以實作相同的輸出:
const myObj = {myVar}
這兩者有什么區別嗎?
uj5u.com熱心網友回復:
只有當 的值不是假的時,版本&&才會創建物件。myVar如果它是假的,它將按原樣獲取值myVar,而不是包裝在物件中。
比較這些示例:
let myVar1 = 10;
let myObj1_and = (myVar1 && {myVar1});
let myObj1_noand = {myVar1};
console.log(myObj1_and);
console.log(myObj1_noand);
let myVar2 = 0;
let myObj2_and = (myVar2 && {myVar2});
let myObj2_noand = {myVar2};
console.log(myObj2_and);
console.log(myObj2_noand);
如果沒有&&,無論變數的值如何,它都會創建物件。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/503662.html
標籤:javascript 目的
上一篇:意外的WS令牌:“”
下一篇:嘗試將節點添加到圖表
