关于!操作符的问题

关于!操作符的问题

console.log(!0);console.log(!456);一个是true,一个是false,原因是什么?

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
ValdisX 2017-09-06 13:56:17

int类型和bool类型是可以转化的,!是“非”运算符,操作对象是布尔型的变量,会把true变成false,把false变成true。如果!直接对int类型的变量进行操作的话,会自动发生类型转换,其中0就相当于false,其他的都相当于true。所以!0就相当于!false,!456就相当于!true。

  • 涨知识。。。。谢谢
    2018-01-08 19:13:45
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
前端小白入门系列课程
  • 参与学习           人
  • 提交作业       11218    份
  • 解答问题       36713    个

从一个不会编程的小白到一个老司机是需要过程的,首先得入门,学习基础知识,然后才能进阶,最后再到精通,本专题是你走进前端世界的不二选择!

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师