如何在 JavaScript 中把一個字串轉換為布林值
Kirill Ibrahim
2023年1月30日
2020年11月7日
JavaScript 有不同的方法將一個字串轉換為布林值,但這要看情況,或者說,要看你將字串轉換為布林值的目的,因為我們有兩種不同的情況,下面我們將介紹。
在 JavaScript 中把一個代表布林值的字串(例如,true
,false
)轉換成布林值
第一個場景是將代表布林值的字串(例如,true
、false
、yes
、no
、0
、1
)轉換為一個固有型別。我們在特定的情況下使用這種方案,例如我們有 HTML 表單元素和一個隱藏的表單,它是基於使用者在檢查輸入或選擇輸入中的選擇而顯示的。
例子
<input type="checkbox" id="display_hidden_form1" name="display_hidden_form1" value="true">
<label for="display_hidden_form1"> Display hide form1</label><br>
<input type="checkbox" id="display_hidden_form2" name="display_hidden_form2" value="false">
<label for="display_hidden_form2"> Display hide form2</label><br>
<script>
let myValue = document.getElementById("display_hidden_form1").value;
let isTrueval = myValue === 'true';
let myValue2 = document.getElementById("display_hidden_form2").value;
let isTrueval2 = myValue2 === 'true';
console.log({isTrueval, isTrueval2});
</script>
輸出:
{isTrueval: true, isTrueval2: false}
速記例子:輸出
const convertString = (word) =>{
switch(word.toLowerCase().trim()){
case "yes": case "true": case "1": return true;
case "no": case "false": case "0": case null: return false;
default: return Boolean(word);
}
}
console.log(convertString("true"));
console.log(convertString("no"));
console.log(convertString("dasdasd"));
輸出:
true
false
true
將字串轉換為布林值來檢查空字串
有兩種方法可以將變數轉換為布林值. 首先是通過雙 NOT 運算子(!!
),其次是通過型別轉換 (Boolean(value))
。
let myBool = Boolean("false");
let myBool2 = !!"false";
console.log({myBool, myBool2});
輸出:
{myBool: true, myBool2: true}
value
是一個變數。對於 null
、undefined
、0
、000
、""
和 false
,它返回 false
。對於字串和空格,它返回 true
。
在上面的例子中,"false"
是一個字串,因此,Boolean("false")
返回 true
。
對於第一種情況,你可能應該謹慎使用這兩種方法,任何不是空字串的字串都會通過使用它們來評估為 true
。
相關文章 - JavaScript String
- 在 JavaScript 中獲取字串的最後一個字元
- 在 JavaScript 中將字串轉換為日期
- 在 JavaScript 中從字串中獲取第一個字元
- 在 JavaScript 中將陣列轉換為字串
- 在 JavaScript 中檢查字串是否相等
- JavaScript 中的單引號與雙引號