日常工作中难免会碰到需将字符串 “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。
- 本文作者: Alvin
- 本文链接: https://alvinyw.github.io/2020/05/2/
- 版权声明: 本博客所有文章除特别声明外,均采用 MIT 许可协议。转载请注明出处!