这是我参与「第四届青训营 」笔记创作活动的第9天。
前言
js作为前端的重中之重,是要学精通的,这门课是由月影老师讲解的,非常有帮助,我总结这门课所学的知识,然后整理成这篇笔记。
写好JavaScript的一些原则
- 各施其职
-
- 让HTML、CSS和JavaScript职能分离。
- 组件封装
-
- 好的U组件具备正确性、扩展性、复用性。
- 过程抽象
-
- 应用败式编程思现。
组件封装
总结:基本方法
- 结构设计
- 展现效果
- 行为设计
-
- API(功能)
-
- Event(控制流)
组件是指Wb页面上抽出来一个个包含模版(HTML)、功能(S)和样式(CSS)的单元,好的组件具备封装性、正确性、扩展性、复用性。
过程抽象
- 用来处理局部细节控制的一些方法
- 函数式编程思想的基础应用
高阶函数
HOF
- 以函数作为参数
- 以函改作为返回值
- 常用于作为函数装饰器
function HOFO(fn){
return function(...args){
return fn.apply(this,args);
)
编程范式
命令式与声明式
let list=[1,2,3,4]:
let mapl []
for(let i=0;i<list.length;i++){
mapl.push(list [i 2);
)
let list=[1,2,3,41:
con5 t double=×sX*2:
list.map(double);
函数式编程的优点
纯函数 大多数函数式编程的好处来自编写纯函数。
定义: 对给定的输入返回相同的输出的函数。
function getSum(n1,n2){
return n1+n2
}
这是一个简单的纯函数,我们给它一个输入,它返回相同的输出。 可见,纯函数遵循”引用透明性“。
同时,纯函数不应该改变任何外部环境变量,即纯函数不依赖任何外部变量。
优化代码的几种方式
-
数据抽象
-
抽象使代码分离成接口和实现。所以在设计组件的时候,必须保持接口独立于实现,因此,你才能做到在改变底层实现时,界面将保持不变。
在这种情况下,无论任何程序使用这些接口,它们不会受到影响,只需要重新编译最新的实现。
-
-
过程抽象
- 忽略任务具体完成的过程,只精确描述该任务所要完成的功能
-
异步+函数式
总结
要想深入计算机领域,要培养工程师意识
要打好数学基础,要培养好算法意识,
要根据不同的场景,选对方法才能更好的解决问题