true=='true'这个等式成立吗?

localStorage存入里面的数据是字符串,如果你存入了一个值是Boolean类型的,
那你你取出来就是一个字符串 'true' 或者 'false'
假设取出来的值是 'true'
在你进行if(){}判断的时候,
成立的条件是 xxx== 'true'
如果你这样写 xxx == true 是不成立的,是不会执行里面的语句的
有人说:
因为localStorage存入的是字符串,那么你取出来的时候,也是字符串;
所以成立的条件是  xxx== 'true'

那么:我想问的是
true=='true' 这个等式成立吗;
知悉想一想;可以先不着急回答这个问题;
<script>
    let flag = true;
    localStorage.setItem('keyname', flag)
    let local_cont = localStorage.getItem("keyname");

    console.log(typeof local_cont); //输出string; 返回来的类型是字符串'true'

    // 这样才是正确的(能够进入if里面的鱼护)
    if (local_cont == 'true') {
        console.log('成立的1 ')
    }

    // 这样是不会执行的
    if (local_cont == true) {
        console.log('不成立的2')
    }

    // 这样也是不会执行的
    if (local_cont === true) {
        console.log('不成立的了3')
    }


    // 不成的(布尔类型的true 不等于 字符串‘true’)
    if (true == 'true') {
        console.log('不成立哈 ')
    }
</script>
所以在我们将布尔值 存入localStorage的时候;
我么需要需要注意的是
成立的条件是 xxx=='true' 或者是 xxx='false'
千万不可以写成   xxx==true 或者是 xxx=false  因为这个等式不不成立的

posted @   南风晚来晚相识  阅读(264)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
历史上的今天:
2019-11-06 04-align-content 它对于当单行是没有效果的
2019-11-06 03-flex-wrap是否换行
2019-11-06 02-align-items的用法
点击右上角即可分享
微信分享提示