写好JS的一些原则:
各司其职:HTML、CSS、JS职能分离
通过一个例子,JS操作CSS样式,和JS操作类名,由CSS控制样式。证明让各部分各司其职,可以方便代码有更好的可观性。 在纯展示类交互寻求零JS方案
组件封装:好的UI组件正确、扩展、可复用
举例:轮播图的实现 实现一个组件,但是他会有不灵活的缺点,修改困难。=> 组件插件化=>模板化=>抽象化 在实现过程中,注意代码的模板化、方便后续功能的变更
过程抽象:应用函数式编程思维
过程抽象概念
用来处理局部细节控制的一些方法 将实现过程中的一些额外需求抽象成一个高阶函数
高阶函数
以函数为参数; 以函数作为返回值; 常用于函数装饰器;
常用高阶函数
节流; 防抖; Once; 想起笔试的时候那道题就是高阶函数诶
编程范式
编程语言有命令式和声明式两种方式
命令式:面向过程和面向对象
声明式:逻辑式和函数式
JavaScript两种都有
质量优化
案例说明
交通灯
直接按照业务逻辑实现代码冗余、不利于维护 去进行抽象和封装,但是也要防止过度抽象
判断是否是4的幂
玛雅,在这里get了解题方法
function judge(num){
num = parseInt(num)
return num>0&&num&(num-1)===0&&
num&0xAAAAAAAAAAAAA===0
}
洗牌
在这种随机数的生成中应该注意随机事件发生的概率到底是否相同
分红包
这个问题不是一个完全随机事件、这种是拼手气红包我懂,请代码黑幕我谢谢
总结
今天的课程不是教JS的语法,而是讲了在实际编码工作中,如何写出更简洁、更快、更优的代码。在实际开发中。理解需求后,我们应该进一步分析,多思考、多学习,找出实现的最优解。今天的课程让我受益匪浅,看着老师的代码,我有一种我能看懂但是我绝对写不出来的感觉,努力,成为一名优秀的前端人员吧!