我如何将字符串转换为布尔值在JavaScript?
English Language Content
我如何将字符串转换为布尔值在JavaScript?
我可以转换成一个字符串,表示一个布尔值(比如,'真正的','假')到JavaScript中的内在类型?
我有一个隐藏的HTML表单更新后,用户的选择为基础的名单之内。 这个表格包含一些领域,代表布尔值,并具有内在动态的布尔值填充。 但是,一旦这个值放入隐藏的输入字段就成了一个字符串。
我唯一能找到,以确定该字段的布尔值,一旦被转换成一个字符串,是取决于它的字符串表示的文本值。
var myValue = document.myForm.IS_TRUE.value;
var isTrueSet = myValue == 'true';
有没有更好的方式来完成这项工作?
#: 263965
javascript
User: Kevin
Answer: 264037
你也许应该谨慎使用您的特定需求这两种方法:
var myBool = Boolean("false"); // == true
var myBool = !!"false"; // == true
任何字符串这不是空字符串使用他们的计算结果为true
虽然他们是最干净的方法,我能想到的关于对布尔的转换,我认为他们不是你要找的。
关于你建议的方式,可以让使用的身份运营商===
它不作任何隐式类型转换时,比较不同类型的变量有严格的,而不是平等的经营者==
它:
var isTrueSet = (myValue === 'true');
#: 264037 javascript
User: guinaps
Answer: 264180
String.prototype.bool = function() {
return (/^true$/i).test(this);
};
alert("true".bool());
#: 264180 javascript
User: Shadow2531
Answer: 1414175
stringToBoolean: function(string){
switch(string.toLowerCase()){
case "true": case "yes": case "1": return true;
case "false": case "no": case "0": case null: return false;
default: return Boolean(string);
}
}
#: 1414175 javascript
User: Steven
Answer: 264071
记住匹配情况:
var isTrueSet = (myValue.toLowerCase() === 'true');
此外,如果它是一个表单元素复选框,还可以检测如果选中复选框:
var isTrueSet = document.myForm.IS_TRUE.checked;
假设,如果它被选中,这是“设置”等于事实。 这种计算为真/假。
#: 264071 javascript
User: Jared Farrish
Answer: 264097
您的解决方案是好的。
用===
也只是愚蠢在这种情况下,由于外地的value
将永远是string
#: 264097 javascript
User: insin
Answer: 920942
如果(字符串(1)==“真”)(
/ /真块
)
否则(
/ /假块
)
#: 920942 javascript
User: n/a
Answer: 323546
我认为这是非常普遍的:
如果(字符串(1)==“真”)...
当然:
字符串(真)==“真正的”/ /返回true
字符串(假)==“真正的”/ /返回false
字符串(“真”)==“真实”/ /返回true
字符串(“假”)==“真实”/ /返回false
#: 323546 javascript
User: n/a
Answer: 264109
如果有一些其他的代码的布尔值转换为字符串,您需要确切知道这些代码存储true / false值。 无论是或需要获得一个函数,扭转这一转换。
有无穷多个方法来表示字符串中的布尔值(“真”,“Y”型,“1”等)。 所以,你不应该依赖一些通用字符串到布尔转换器如布尔(myValue)。 您需要使用一个例行程序,推翻了原来的布尔到字符串的转换,无论是。
如果你知道它能够将真正的布尔值为“true”字符串,那么你的示例代码罚款。 除了你应该使用== ===代替,因此没有自动类型转换。
#: 264109 javascript
User: JW
Answer: 264105
你需要单独的(在你的想法)您选择的价值和该值的表示。
选择在JavaScript逻辑的一个点,他们需要从字符串哨兵过渡到本地类型,做一个比较有,最好的地方只有得到执行的每个需要转换价值的一次。 请记住,以解决需要做些什么,如果字符串不是一个哨兵的脚本知道(即你默认为true或假?)
换句话说,是的,你需要依赖于字符串的值。 :-)
#: 264105 javascript
User: staticsan
Answer: 263969
var myBool = Boolean.parse("true");
或
var myBool = Boolean("true");
或
var myBool = !!"true";
不知道第一个是IE特定的。
#: 263969 javascript
User: FlySwat
Comments for #: 263969
下面是与使用布尔的事情(“真”)。 这是一个有点误导,因为布尔(“假”)和布尔('跆拳道“)评估的也是如此。你的第三个答案是非常相似。 #:120241 Kevin
分享到:
相关推荐
将值转换为布尔值-识别'true'和'false'字符串 安装 $ npm install --save booleanify 用法 const booleanify = require ( 'booleanify' ) ; booleanify ( 'true' ) ; //=> true booleanify ( 'false' ) ; //=> ...
一个非常简单的模块,它采用JavaScript对象并返回一个新对象,该对象具有将布尔值,空值和数字转换为正确类型的字符串表示形式。 所以: "true"和"false"变为true和false "1"和"3.147"为1和3.147 即使“看起来像...
将布尔值的字符串表示形式转换为布尔值。 快速开始 var parseBool = require ( 'parse-bool' ) ; var bool = parseBool ( 'true' ) ; if ( bool ) { ... } 支持的字符串 “ true”> True “假”>假 “ null”>空
),它适用于null (因为typeof null === "object" ) 字符串将转换为小写并与"true"或"1" Symbol目前被视为永远为真未定义始终为假如果这些类型都不与传递的项目匹配,则抛出TypeError 。用法使用非常简单: var ...
将文件转换为 JavaScript 转义字符串的 Gulp 插件。 var jsEscape = require ( 'gulp-js-escape' ) ; // file.htm -> some text "needing" escaped gulp . src ( 'file.htm' ) . pipe ( jsEscape ( ) ) . dest ...
<br>在撰写本文时的最新更新中,www.json.org 上的 json.js 脚本将 toJSONString() 函数添加到数组、字符串、布尔值、对象和其他 JavaScript 类型。该标量类型(如数字和布尔值)的 toJSONString() 函数相当简单...
JavaScript基础语法资料 JavaScript代码 素材 笔记 作业资料,学习资料 01-编程语言.html 02-JS初体验.html 03-JS注释.html 04-JS输入输出语句.html 05-变量.html 06-变量案例.html 07-变量案例弹出用户名.html 08-...
将数组元素连接为字符串.asp 构造制定字符串.asp 正向截取字符串.asp 正向查找字符串.asp 获取字符串长度.asp 第13章(/14/) Matches集合与Macth对象.asp ...
因为变量类型在表单控件中是字符串类型(计时字符串序列包含一个数字)这种尝试将会添加那个字符串到变量,即使这些值碰巧是一些数字,结果在第二个变量将会被转换为字符串类型,在最后只会把从表单控件中得到的变量...
将字符串转换为布尔值 isUndefined 检查对象是否未定义 一片空白 检查对象是否为空 deg2rad 将度角转换为辐射角 验证电子邮件 验证给定的电子邮件地址 领先零 在字符串中添加前导零,直到匹配给定字符长度
对象转布尔值:var bool = !!obj; 数组遍历 使用Array.prototype.forEach(): Javascript const arr = [1, 2, 3]; arr.forEach((item, index) => { console.log(item, index); }); 使用for...of循环: Javascript ...
对象和布尔值进行比较时,对象先转换为字符串,然后再转换为数字,布尔值直接转换为数字 [] == true; //false []转换为字符串'',然后转换为数字0,true转换为数字1,所以为false 2. 对象和字符串比较 对象和字符串...
5.3 数字、字符串还是布尔值?数据类型转换 5.3.1 parseInt()函数 5.3.2 parseFloat()函数 5.3.3 eval()函数 5.4 特殊运算符 5.5 应知应会 练习 第6章 条件选择 ...
- 将给定的特殊字符串转换为 HTML。 - 计算给定数字的阶乘。 - 查找给定字符串中最长单词的长度。 - 检查给定值是否是布尔原始值。 - 检查给定的字符串是否是回文。 删除给定数组的虚假值。 重复一个字符串,...
javascript有两种数据类型的转换方法: (一)将整个值从一种类型转换为另一种数据类型(称作基本数据类型转换) (二)从一个值中提取另一种类型的值,并完成转换工作 基本数据类型转换的三种方法: 1.转换为字符...
函数转换为字符串一般是将函数体输出,不过可以重写其toString方法 (二)转换为数字 代码如下:parseInt(),parseFloat() 使用Number(),前面不要加new,这样就转换成对象了。 参与数学运算(加法除外) + X :注意这...
常见JS类型转换表值|to 字符串|to 数字|to 布尔值|to 对象补充:更多内容待更新。
3.3 布尔值 3.4 null和undefined 3.5 全局对象 3.6 包装对象 3.7 不可变的原始值和可变的对象引用 3.8 类型转换 3.9 变量声明 3.10 变量作用域 第4章 表达式和运算符 4.1 原始表达式 4.2 对象和数组的初始化表达式 ...
6) typeof函数的返回值:数字——number,字符串——string,布尔值——Boolean,对象、数组、null——object,函数名——function或undefined(未定义时)。主要用来区别区别对象和原始类型。要区分对象的具体类型...
3.3 布尔值 3.4 null和undefined 3.5 全局对象 3.6 包装对象 3.7 不可变的原始值和可变的对象引用 3.8 类型转换 3.9 变量声明 3.10 变量作用域 第4章 表达式和运算符 4.1 原始表达式 4.2 对象和数组的初始化表达式 ...