JavaScript >> Javascript 文檔 >  >> Tags >> string

在 JavaScript 中將字符串轉換為布爾值,帶有示例

本教程將向您展示如何在 JavaScript 中將字符串值轉換為布爾值,並提供多種情況下的工作代碼示例。

為什麼要將字符串轉換為布爾值?

確實,您不應該將布爾數據存儲在字符串中,但有幾種情況可能會出現:

  • 用戶輸入產生的布爾值
  • 取自 HTML 表單元素的值,只能包含字符串值
  • 數據取自格式不佳的第三方來源,例如 API 或 CSV 文件

一旦您擁有包含布爾值作為字符串的數據,您必須確定這些字符串採用什麼形式,以及什麼將被視為 TRUE 價值。

如何在 JavaScript 中判斷布爾字符串值的真/假

這個任務並不需要一個可重用的函數——從字符串值轉換為布爾值只是一次比較的結果。

在以下示例中,字符串中 TRUE 值的預期值為 “true” – 將要轉換的字符串值與這個期望值進行比較,根據是否匹配返回一個布爾值:

var stringValue = "true";
var booleanValue = (stringValue === "true"); // Results in a boolean value of TRUE as it is a match for "true"

var stringValue = "false";
var booleanValue = (stringValue === "true"); // Results in a boolean value of FALSE as it is not a match for "true"

同樣,如果您期望 true 的值為“1”(而 false 的值為“0”),因為某些布爾值以數字形式存儲並且可能已轉換為字符串:

var stringValue = "1";
var booleanValue = (stringValue === "1"); // Results in a boolean value of TRUE as it is a match for "1"

var stringValue = "0";
var booleanValue = (stringValue === "1"); // Results in a boolean value of FALSE as it is not a match for "1"

您必須使用嚴格相等=== 運算符,以確保在進行比較時變量的值和類型相同 - 否則鬆散的比較可能會導致意外行為。

保持類型有序

如果您要生成自己的數據並將布爾值存儲為字符串,請考慮將它們存儲為布爾類型值,或使用支持布爾值的格式。類型錯誤是 JavaScript 應用程序中的常見故障點,因此保持數據類型正確,或盡可能早且不頻繁地將它們轉換為正確類型,可以大大減少您以後必須進行的調試量開。


Tutorial JavaScript 教程
  1. 前端之爭:2019 年 Angular vs React vs Vue

  2. 為什麼我的 localhost:3000 不起作用(錯誤 500)

  3. 在 Storybook 中使用 ThemeProvider 組件

  4. 高級 TypeScript 練習 - 問題 5

  5. 使用 Angular NgModules 實現可重用代碼等

  6. Formik VS React Hook 表單第一部分

  7. 解決方案:單詞的短編碼(版本 1)

  1. 電子郵件訂閱工作流程 - Ruby on Rails

  2. JavaScript .replace 僅替換第一個 Match

  3. Firefox 44 中的 Web 推送到來

  4. JavaScript – 暫停執行或睡眠功能等效

  5. 對於 javascript,是否有任何等效於 dbug(vars 的 *really* 漂亮打印)?

  6. 為什麼帶有全局標誌的 RegExp 會給出錯誤的結果?

  7. 未定義 HTML 集合的 JavaScript 最後一個元素

  1. 即使在路由之後,組件也不會呈現 |反應 JS |反應路由器 v6

  2. 如何使用 React 創建電子商務網站

  3. 從 API 獲取數據:獲取

  4. 用西班牙語用 NodeJs 創建一個簡單的 API