为什么不是返回最后一个值呢

为什么不是返回最后一个值呢

<!DOCTYPE html>

<html>

<head>

    <meta charset="UTF-8">

    <title>银行业务查询</title>

</head>

<body>

    <script>

   console.log("hello" && 0 && "abc");

</script>

</body>

</html>

为什么不是返回abc吗?我是这样理解的因为hello转换为true,根据原则一,第一个操作数转换为true,返回最后一个值。那是要怎么理解呢

正在回答

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

1回答

"hello"被隐式类型转换成布尔类型是true,0隐式类型转换成布尔类型是false,“abc”被隐式类型转换成布尔类型是true,操作数两两对比,当0和“abc”做对比时,返回的是第一个操作数(这里的第一个操作数是指0)祝学习愉快~

  • 慕工程1453923 提问者 #1
    那为什么console.log("hello" && 123 && "abc");返回的是abc而不是123呢
    2017-10-10 11:36:20
  • 卡布琦诺 回复 提问者 慕工程1453923 #2
    "hello"被隐式类型转换成布尔类型是true,123隐式类型转换成布尔类型是true,“abc”被隐式类型转换成布尔类型是true,操作数两两对比,当123和“abc”做对比时,返回的是第一个操作数(这里的第一个操作数是指123)祝学习愉快~
    2017-10-10 11:50:27
  • 慕工程1453923 提问者 回复 卡布琦诺 #3
    噢噢,ヽ( ̄▽ ̄)و谢谢
    2017-10-10 16:56:52
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

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

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

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

在线咨询

领取优惠

免费试听

领取大纲

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