【发布时间】:2010-09-20 19:23:49
【问题描述】:
我可以在 JavaScript 中将表示布尔值(例如,'true'、'false')的字符串转换为固有类型吗?
我有一个 HTML 中的隐藏表单,它会根据用户在列表中的选择进行更新。此表单包含一些表示布尔值的字段,并使用固有的布尔值动态填充。但是,一旦将此值放入隐藏的输入字段中,它就会变成一个字符串。
一旦将字段转换为字符串,我能找到确定该字段的布尔值的唯一方法是依赖于其字符串表示的文字值。
var myValue = document.myForm.IS_TRUE.value;
var isTrueSet = myValue == 'true';
有没有更好的方法来做到这一点?
【问题讨论】:
-
“有没有更好的方法来完成这个?” - 当然还有更糟糕的方法:D
string=(string==String(string?true:false))?(string?true:false):(!string?true:false); -
轻松处理字符串和布尔值:
function parseBool(val) { return val === true || val === "true" } -
@Mark
function checkBool(x) { if(x) {return true;} else {return false;} } -
@Sebi:你忘记记录了:
if (checkBool(x) != false) { ... } else { ... } -
!!(parseInt(value) || value === "true")
标签: javascript boolean-expression boolean-operations string-conversion