JavaScript技术可以分三类 — 学习JS必须了解的精髓

JavaScript的基本组成

学习JavaScript的第一步,在于了解JavaScript的基本组成,了解JavaScript技术当中有哪些类型的知识。

JavaScript = ECMAScript + DOM + BOM

其中ECMAScript表示的是基本语法,包括我们实现JS的基本语法,如变量的声明、基本的语句(if、for、switch等)、函数、参数、作用域、this、原型继承、数组字符串正则等各类方法等。

DOM,表示文档对象模型,其实就是JavaScript语言中,能够操作标签以及标签属性/样式的方法。

BOM,表示浏览器对象模型,比如页面跳转、刷新,返回上一个浏览记录等。

学习JavaScript时的三部分

基于上面JavaScript的基本组成,我们能够将JavaScript中的技术分为两大类。除此之外,当JavaScript与工作挂钩时,又会衍生出我们需要掌握的第三大类 —— 快速开发。三大类知识以及学习目的简要概括如下:

1 基本DOM与BOM操作 - 目的:实现页面的变化

2 底层知识 - 目的:优化代码性能

3 各类框架 - 目的:提升开发效率

如何学好JavaScript

接下来利利就带大家站在基于JavaScript的三类技术,看看如何才能把JavaScript学好。

基本DOM与BOM操作

难度系数:最低

知识类型:记忆型知识

技术举例:获取标签、为标签绑定事件,获取或修改元素的样式,获取或修改元素的内容等。

具体描述:我们可以将每个元素或标签看做一个对象,CSS其实就是在为这些对象增加样式,而JS就是在操作对象的样式或者属性,通过让对象的样式或属性发生变化,而实现我们视觉上的各类动态效果。

在书写一些效果时,这部分知识在其中充当的是功能的核心代码,但是如果仅仅依靠此类知识,代码书写出来的冗余度会很高,扩展性也很差。

优化代码性能用的底层知识

难度系数:基础语法难度较低,优化代码难度较高

知识类型:应用型知识

技术举例:函数封装、参数、递归调用、面向对象、设计模式、原型、继承(PS:在此,我们将“基础语法”放置于这一类当中)

具体描述:如果说实现一个功能很简单的话,那么想把一个功能的质量提升上来,就没有那么容易了。我们可以将这部分技术简要概括为:“让我们的代码变得更简单,复用性更强。但不涉及任何元素的操作。”

提升开发效率用的各类工具框架

难度系数:中等

知识类型:实战型知识

技术举例:jQuery zepto bootstrap Grunt Angular等各类框架

具体描述:学习此类知识之后,主要是为了让我们的开发速度更快,提升工作效率,此类知识与前端开发工程师的工作性质相关。需要额外注意的一点是,如果完全没有基础去学习此类知识,难度系数比较大,如果对于前两类知识有比较深入的理解,此种知识在学习时的难度系数就要降低很多~(这也是开发工作当中几乎不会遇到原生JS,但是依然要将其学好的原因。学好了原生的JS,对于框架类的知识的掌握速度会有质的提升)

简要概括:

JS实现功能很简单,但是想做好很难,而“做好”是JS的精髓。掌握了基本的DOM操作之后,就需要不断考虑代码优化。又由于前端开发工作性质的需要,要求能够快速开发,就需要学习一些相关框架。利利在此推荐的学习顺序是:

——> 基础语法

——> DOM操作

——> 优化代码

——> 开发效率

不知道经过这一番解释,你是否对JS所包含的技术有了一定的了解了呢?

学习顺序的重要性

最后,说说学习顺序的重要性吧,HTML5学堂的成员们一致认为这个学习顺序至关重要。利利表示:自己大概是在2009年开始学习JS,当时用的是一本叫做《JavaScript征途》的书籍,自学了1年的时间之后,虽然对各类方法有一定的了解,但是在一些效果实现上实在是很没思路,并不知道从何下手。甚至~~~自学一年之后,自己都不知道JS文件如何引入到HTML文件当中,只是在html文件当中书写JS代码,唉,郁闷的也是不要不要的~(有点儿感觉像是在吐槽当前书籍像字典的感觉啊~~~)学习顺序和方法能够让我们事半功倍,所以,今天分享的内容,虽然不是技术,但是还是至关重要的!

原文发布于微信公众号 - HTML5学堂(h5course-com)

原文发表时间:2016-04-21

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏新智元

让Python之父愤然退位的PEP572究竟是什么?

【新智元导读】在星期四的一份名为“权力转移”的邮件列表帖子中,Python之父Guido van Rossum写道:“现在PEP 572已经完成,我不再想为一个...

930
来自专栏Nian糕的私人厨房

腾讯课堂 IMWeb 七天前端求职提升营 Day 1

本次的系列博文主要是针对 腾讯课堂七天前端求职提升营 课程中,所推送的面试题目及编程练习的一次汇总,期间还包括三次直播课的分享,均由腾讯导师给大家讲解,该系列博...

633
来自专栏Python爬虫与算法进阶

来codewars与我一起玩耍吧

先看一道题目 如何使用代码表示“石头、剪刀、布”之间的关系。 即:石头 > 剪刀,剪刀 > 布, 剪刀 > 布 当时我想了很多,构造一个字典,和数字对应,但是...

34810
来自专栏编程

JavaScript 2018:你需要和不需要深入的

编译:众成翻译/NimitzDEV zcfy.cc/article/javascript-2018-things-you-need-to-know-and-a-...

1746
来自专栏Android知识点总结

Android粒子篇之文字的粒子化运动

1213
来自专栏数据结构与算法

9.22模拟赛解题报告

T2读题就花了半个小时,而且一开始没认真理解题目的意思,前后各dp了一遍,后来仔细揣摩了一下题意,细心品味了一下出题人的语言,正着的dp好像是没用的。。。

783
来自专栏前端知识分享

第170天:面向对象-产品详情页开发

  (1)绑定基本信息(bindBasic)     $('#pname').html(this.name);     $('#price'...

1256
来自专栏程序员宝库

如何掌握所有的编程语言

100本前端书籍下载|前端全套视频下载 对的,我这里要讲的不是如何掌握一种编程语言,而是所有的。 本文作者王垠,代表作《完全用Linux 工作》,著名软件工...

4198
来自专栏Golang语言社区

go语言的指针

在学习go语言的时候,谈到了指针。之前很害怕指针,因为在传说中,指针这玩意儿据说狠不好弄,且有很多程序员都死在这上面。可是,这毕竟是go语言借鉴C语言为了提升速...

3177
来自专栏CDA数据分析师

4大分析工具的代码表白术,520花式秀恩爱!

尽管笛卡尔和瑞典公主的故事已被证实只是杜撰,但因这个故事出名的心形函数被广为流传。今天又是一个虐单身狗的日分析师子,面对各种毫无新意的表白方式,让我们来看看理工...

25610

扫码关注云+社区