簡體   English   中英

沒有其他條件的條件變量賦值

[英]Conditional variable assignment without else

我從服務中獲取了一個變量,它可以是true,false或undefined。 如果是真或假,則必須保留,否則必須設置為true;否則,必須設置為true。

我在想如何做,我用了:

  obj.foo != false && (obj.foo = true);

有最好的方法嗎? 我的意思是,我可以使用三元運算符,但是在某些情況下,我的變量已經為false / true,因此我不需要三元數的else語句。

我認為這可以工作: foo === undefined || foo foo === undefined || foo

 var foo = undefined; console.log(foo === undefined || foo); var foo = true; console.log(foo === undefined || foo); var foo = false; console.log(foo === undefined || foo); 

這樣的事情會起作用:

function invokeMe () {
  var objectsArray = [{name: "object1", trueOrNot: true}, 
                {name: "object2", trueOrNot: false},
                {name: "object3", trueOrNot: ''}
               ];
  objectsArray.forEach(function (object) {
  object.trueOrNot = object.trueOrNot !== false ? true : false;
  console.log(object);
});
}

invokeMe();

傑斯菲德爾

暫無
暫無

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

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