【问题标题】:How to convert string into boolean in JavaScript [closed]如何在 JavaScript 中将字符串转换为布尔值 [关闭]
【发布时间】:2018-03-09 20:39:23
【问题描述】:

我正在寻找一个函数,它可以像下面的布尔值一样转换一串数字:

var a = "3>6";
toBoolean(a); //return false
var b = "7<9";
toBoolean(b); //return true

感谢任何帮助我解决这个问题的人。

谢谢

【问题讨论】:

  • evalnew Function.
  • 问题太模糊了。您只需要处理大于/小于并解析整数吗?您可能要求的事情有很多
  • 只需使用Boolean(…) 而不是toBoolean(…),并省略带引号的变量。如果你不能,你需要使用eval

标签: javascript string boolean


【解决方案1】:

在这个特定案例中,您可以使用eval() -- 但是,如果您需要利用eval() 来确保您在安全的情况下使用它,您可能应该进一步考虑您的用例方式。 (即不要评估未经处理的用户输入)

var a = "3>6";
eval(a); //return false
var b = "7<9";
eval(b); //return true

【讨论】:

  • 非常感谢。
【解决方案2】:

所以这不仅仅是一串数字,它还有一个比较,你想要评估。

此时要考虑的一个好问题是您是如何陷入这种情况的。但我认为你有充分的理由。

简单的答案,比每个人都应该反对我的说法:

b = eval(str)

但这会冒很大的风险,具体取决于您对上述问题的回答。

因此,您可能需要考虑对字符串进行一些工作以查找运算符和数字,并更手动地进行评估。

if (str[1] == '>') { return +str[0] > +str[2] } else if { ...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-09-20
    • 2017-06-03
    • 2017-07-02
    • 2014-06-27
    • 2011-02-17
    • 2012-04-02
    相关资源
    最近更新 更多