ฉันสามารถแปลงสตริงที่แสดงค่าบูลีน (เช่น 'true', 'false') เป็นประเภทที่แท้จริงใน JavaScript ได้หรือไม่
ฉันมีรูปแบบที่ซ่อนอยู่ใน HTML ที่มีการปรับปรุงตามการเลือกของผู้ใช้ภายในรายการ แบบฟอร์มนี้มีบางฟิลด์ที่เป็นตัวแทนของค่าบูลีนและมีประชากรแบบไดนามิกด้วยค่าบูลีนที่แท้จริง อย่างไรก็ตามเมื่อค่านี้ถูกวางลงในช่องใส่ที่ซ่อนอยู่มันจะกลายเป็นสตริง
วิธีเดียวที่ฉันสามารถค้นหาเพื่อกำหนดค่าบูลีนของฟิลด์เมื่อมันถูกแปลงเป็นสตริงจะขึ้นอยู่กับค่าตัวอักษรของการเป็นตัวแทนสตริง
var myValue = document.myForm.IS_TRUE.value;
var isTrueSet = myValue == 'true';
มีวิธีที่ดีกว่าในการบรรลุเป้าหมายนี้หรือไม่?
function parseBool(val) { return val === true || val === "true" }
function checkBool(x) { if(x) {return true;} else {return false;} }
if (checkBool(x) != false) { ... } else { ... }
!!(parseInt(value) || value === "true")
string=(string==String(string?true:false))?(string?true:false):(!string?true:false);