为什么要判断data为0的情况?

为什么要判断data为0的情况?

http://img1.sycdn.imooc.com//climg/6038688e09f8876305480305.jpg


在home.js中有写,已经让返回的数组里最少有1个值了


这里为什么还要判断一个传进来的数组长度为0的情况?

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

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

3回答
好帮手慕夭夭 2021-02-26 19:19:33

同学你好,在之前给同学讲解过同步执行和异步执行的原理,建议同学复习一下哦。地址如下:

http://class.imooc.com/course/qadetail/261452

另外,它们不需要串联,因为代码执行完毕就过去了。只需要知道执行了什么代码,实现了什么效果就行。

祝学习愉快~

  • 提问者 人生的起源 #1
    再问下,你和慕灰灰是同个人吗?
    2021-02-26 20:27:38
好帮手慕夭夭 2021-02-26 18:21:56

同学你好,下面判断sliders数据的长度为0,和上面的slider为0没有什么关系。如下代码中,slider也是在sliders中随机获取的数据。

http://img1.sycdn.imooc.com//climg/6038ca790992fb2706680111.jpg


为请求数据是异步的,同学应该理解异步吧,这个之前也经常说了。当数据请求成功之后,并不是说数据一下子就全部传输过来了,而是像水管流水一样,数据就像水一点一点传输过来。所以执行上面随机获取数据的代码时,数据如果传输的慢,sliders中就没有数据,把slider更就不可能从sliders中获取到数据了。

下图只是判断,当sliders为0的时候,把slider的数据赋值给它。但如果slider本身没有数据,sliders自身还是没有数据哦。

http://img1.sycdn.imooc.com//climg/6038cb510959019404470125.jpg

​祝学习愉快~

  • 提问者 人生的起源 #1
    说真的,到现在对同步异步的概念还是很含糊,只知道同步异步是不同的线程执行,但不知道谁先谁后,以及它们执行完了又是怎么串联到一起的
    2021-02-26 18:29:49
好帮手慕夭夭 2021-02-26 13:55:31

同学你好,数组中随机获取的1个数据,也是从请求过来的数据中获取的。而数据请求是异步的,所以在随机获取的时候,也有可能此时数据为哦,那么这个数组还是空的。当然了,这种几率小,但加一个判断也是避免小概率的情况哦。

祝学习愉快~


  • 提问者 人生的起源 #1

    http://img1.sycdn.imooc.com//climg/60389234092543b308620322.jpg

    什么意思,听得不是很懂,上图这里已经判断了if (sliders.length === 0),sliders = slider,那就是说return sliders出来的数组,最少有1个数据,为什么在监听data的时候,还要判断有0的情况?

    2021-02-26 14:19:30
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
热门框架Vue开发WebApp 18版
  • 参与学习           人
  • 提交作业       209    份
  • 解答问题       3299    个

本路径是通过ES6基础知识、运用Zepto、Swiper、fullPag等移动端常用工具包、以及当下流行框架Vue,结合多个实战案例,还原真实开发场景,最终实现手机端购物商城网页开发。

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

在线咨询

领取优惠

免费试听

领取大纲

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