赋值语句如何返回boolean值??

正在回答

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

2回答

同学是不理解下面这段代码对吧?这段代码不能单独拿出来理解,是要结合上下文的代码理解的

http://img1.sycdn.imooc.com//climg/5d2e8f3a0001ea3c05000098.jpg

建议同学再好好听一下课程视频,老师再课程中讲到停止循环的条件了,在视频的12:40秒。

http://img1.sycdn.imooc.com//climg/5d2e8f1000010af510820747.jpg

祝学习愉快!

  • 楚楚提 提问者 #1
    我知道这个意思,就是说nodes是个集合,循环遍历到最后一个的时候,i++超出length了,赋值給他不成立了,就结束了,是吗? 我只是第一次见到这种结束循环方式,以往接触的语言都没有这种模式
    2019-07-17 11:05:34
  • 卡布琦诺 回复 提问者 楚楚提 #2
    同学的理解是正确的,nodes是一个集合,既然是一个集合,nodes里面的元素个数就是有限的,可能是1个、也可能是5个,假设nodes集合里面的元素是5个,那么不断的for循环,执行i++,当i++是6的时候,就相当于是for (var i = 0;node = nodes[6];) {……},而原本nodes里面只有5个元素,现在i变成了6,长度超出,就匹配不到nodes集合里面的元素了,也就没办法赋值了,所以结束循环,原理跟for (var i = 0;i<5;i++) {}其实是一样的,只是长得不太一样,同学学习能力和理解能力还是非常棒的,加油!棒棒哒!
    2019-07-17 11:12:20
卡布琦诺 2019-07-16 19:24:45

事实上赋值语句并没有所谓的返回值,如果还有疑问,可以再次提问

祝学习愉快!


  • 提问者 楚楚提 #1
    那for循环条件怎么停止的
    2019-07-16 20:16:58
  • 卡布琦诺 回复 提问者 楚楚提 #2
    for循环中,当条件不满足的时候,就会停止循环,比如for (var i = 0;node = nodes[i++];) {……},i=0满足node = nodes[i++],继续循环;i=1满足node = nodes[i++],继续循环;i=2满足node = nodes[i++],继续循环;假设,i=3不满足node = nodes[i++],停止循环了,虽然说赋值语句并没有所谓的返回值,但是在for循环中,作为判断条件,满足条件相当于是返回true,不满足条件相当于是返回false。希望可以帮到你!
    2019-07-17 10:45:08
  • 提问者 楚楚提 回复 卡布琦诺 #3
    赋值语句,把右边赋给左边,怎么就不满足了? 还是没说清楚
    2019-07-17 10:48:52
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

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