老师这段代码不明白
来源:2-8 Vue项目首页 - 图标区域逻辑实现
慕沐2093547
2020-09-07 17:46:57
if (!pages[page]) {
pages[page] = [];
}为什么要加这段代码1回答
好帮手慕言
2020-09-07
同学你好,这里是判断pages[page]是否有值,没有值的话,!pages[page]转成布尔值为true, 就会执行if语句, 将pages[page]初始化为空数组。
整体可以参考下方理解:
1、可以先结合源码打印下pages,查看下最终的输出的结果

打印结果如下: pages数组中有两项,也分别都是数组,一个数组中有8项,另一个数组中有1项。

2、因为我们并不确定pages数组中一共有多少个数组,所以一开始默认设置pages是一个空数组,然后通过计算的page值,确定pages中具体有几个数组。
因为pages[page]一开始是没有值的,只有初始化为空数组后,才可以使用数组的push方式,向数组中添加数据。
当pages[page]有值后,不满足if条件,就会跳过if语句,直接向数组中添加数据了
同学可以结合视频再理解下,如果我的回答帮到了你,欢迎采纳,祝学习愉快~
相似问题
回答 3
回答 1