js 将字符串“true”、“false”转换成 true、false

  • 2020-05-07
  • 0
  • 0

日常工作中难免会碰到需将字符串 “true”、“false” 转换成 boolean 类型的 true、false 的情况;

例如将 true、false 存储在 local storage 或者 session storage 中时,会被转换成字符串类型 “true”、“false”,此时通过 localStorage.getItem 取出来的值是 string 而不是 boolean,故不能直接用来做判断。

下面介绍几种将 “true” 抓换成 true 的方法:

一、直接判断字符串

const isCorrect = "true"
if(isCorrect.toLowerCase() === "true"){
    return true;
}else{
    return false;
}

二、JSON.parse

const isCorrect = "true"
if(JSON.parse(isCorrect.toLowerCase())){
    return true;
}else{
    return false;
}

此时要注意 isCorrect 为 “”、undefined 等情况。

三、eval

const isCorrect = "true"
if(eval(isCorrect.toLowerCase())){
    return true;
}else{
    return false;
}

eval 方法的入参有严格的限制,具体请看 JavaScript eval() 函数

如果情况允许还可考虑用 0、1 来替代 false、true。

评论

还没有任何评论,你来说两句吧