程宇寒 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日

悬赏问题

  • ¥30 深度学习,前后端连接
  • ¥15 孟德尔随机化结果不一致
  • ¥15 apm2.8飞控罗盘bad health,加速度计校准失败
  • ¥15 求解O-S方程的特征值问题给出边界层布拉休斯平行流的中性曲线
  • ¥15 谁有desed数据集呀
  • ¥20 手写数字识别运行c仿真时,程序报错错误代码sim211-100
  • ¥15 关于#hadoop#的问题
  • ¥15 (标签-Python|关键词-socket)
  • ¥15 keil里为什么main.c定义的函数在it.c调用不了
  • ¥50 切换TabTip键盘的输入法