标签:
有时候实现一个具体的功能,写了一半发现写不下去导致半途而废,怎么避免这种情况?
我现在的做法都是实现前只有个大概的方向,代码里的细节是边写边想的,实现不实现的了,要在写的时候才知道。但方向错了后面就都做了无用功。
比如下面这个轮播图的功能,有多个轮播页面,每个页面可以放置多个图标。 我的想法可能是这样的,用伪代码表示:
1 、用个数组存储所有的小图标的名称或路径
let iconList = [{"src": "icon1.png"}, {}, ...]
2 、定义一个变量来表示每个轮播页可以放下的小图标的数量
let iconsPerPage = 8;
3 、根据小图标的数量和每页的数量,可以算出需要的轮播页的数量
let pageCount = Math.ceil(iconList.length / 8)
4 、利用循环生成轮播页
for (let i=0; i<pageCount; i++) {
let page = document.createElement("div");
...
}
5 、然后可以在每个轮播页里,循环生成轮播页里的图标
for (let i=0; i<pageCount; i++) {
for (let j=0; j<iconsPerPage; j++) {
...
}
}
想到这里就结束了。细节是在写代码的过程中边写边想的,至于实现不实现的了,要在写的时候才知道。 比如下面这些步骤都是在过程中才想:
计算出当前小图标在数组中的索引
let index = i * iconsPerPage + j
icon.src = iconsList[index].src
在生成轮播页里的图标时,如果索引超出了数组的长度,就跳出循环
if (index >= icons.length) {
break;
}
标签: 来源:
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。