关注程序员耳东,编程转码真轻松
这个问题也来自于群里的讨论,大概就是某一天群里有小伙伴说在学javascript,但是好像没有把这门语言的重点学号,因此我写一篇笔记来解答这个问题。
如果你在学习前端或者是已经工作了想系统性的扎实基础,那都可以看看这篇笔记自检一下。
首先呢,javascript可以分为下面这几个学习重点:
- javascript编程基础
- javascript语言特性
- javascript异步和网络
- dom和bom部分
接下来我详细的阐述一下各个重点的一些学习细节
javascript编程基础
编程基础这部分,其实各个语言的编程基础部分都差不太多,这部分都需要学习这些东西:
- 变量声明,常量声明,类型,运算符,数组操作方法
- 方法声明,方法的调用
- if else条件分支,switch条件分支
- for循环,while循环
- 在浏览器中如何调试javascript,这个很重要,因为写代码有很大一部分时间是在调试代码
这部分学习的东西主要是编程基础,几乎没有涉及到javascript的语言特性
学习这部分的时候可以找一些简单的编程题目做一下,练习编程思维,打下编程基础
javascript语言特性
语言特性这部分就会稍微难一些,而且由于javascript存在多版本语言特性(比如ES6、ES7、ES8)的问题,很多新的语法特性我们也是需要学习的
- 函数的作用域,闭包
- this的绑定,箭头函数
- 原型和原型链,继承,Class
- javascript的垃圾回收机制
- javascript里的函数式编程
- setTimeout和setInterval
这部分东西算是javascript和其他语言不太一样的东西,也算是稍微有点深入的东西
javascript异步和网络
为啥要把异步和网络这部分单拿出来呢,因为这部分在平时编码中出问题的概率比较大,而且也是使用率很高的一个部分
- ajax,fetch
- promise,async/await
- http基础知识
- 对异步、同步的理解
这部分的知识非常影响你写代码的质量,工作之后前后端交互非常多,所以这部分一定要好好学
dom和bom部分
dom和bom简单的来说就是,javascript如何处理页面上的html节点、如何和浏览器打交道的能力
- 如何获取html节点,getElementById,getElementByClassName,getElementByTag,querySelector等等
- 如何修改html节点的属性
- 如何遍历html节点树
- 如何给html节点绑定事件,事件代理,事件冒泡,自定义事件,事件的分类
- 获取浏览器窗口宽高,window.location的用法
这部分主要是学习如何在javascript中去控制页面展示和浏览器行为,也都是很实用的知识
总结
我写的这些只是我觉得应该重点学的javascript知识点,如果你是新手的话,尽量都去过一遍,但是不必每个点都学的特别深,因为这些知识你迟早得反复学习多遍;
但是如果你是老手的话,建议你把这些点都搞懂
关注我^_^,学习更多编程干货