程宇寒 2019-12-15 17:35 采纳率: 100%
浏览 446
已采纳

JavaScript中的true和false

图片说明
图片说明

<script type="text/javascript">
var a = 1;
var b = 6;
var c = 8;
var d = 0;
//结果为true false false false
console.log(a==true, b==true, c==true, d==true);
//结果为false false false false
console.log(a===true, b===true, c===true, d===true);
//结果为false false false true
console.log(!a, !b, !c, !d);
//结果为false true false false false true false
console.log(true==0, true==1, true==2, true==3, true==666, false==0, false==1);
//结果为false truehello
console.log(true == 1 + 'hello', (true == 1) + 'hello');
//结果为true false
console.log(true == '1', true == 'true');

console.log('==================');
</script>
  • 写回答

2条回答 默认 最新

  • 天际的海浪 2019-12-15 20:00
    关注

    比较运算与逻辑运算的处理方式不同。
    两个不同类型的值用==比较运算时,会先转换成同一类型再比较。
    当数值型与布尔值比较时是把布尔值转换成数值型(true转换为1,false转换为0),
    所以1==true 会转换为1==1 ,2==true会转换为2==1

    而逻辑运算时是把数值型转换成布尔值(0转换为false,非0的数都会转换为true)

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 已采纳回答 3月21日

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器