前言
自互联网出现以来,Web前端便不断地发生变化。其间,我们看到了网页端脚本语言的萌发和进化,JavaScript语言标准的制定,各浏览器厂商之间的竞争,等等。
随着Web应用的发展,涌现了大量优秀的库和框架,例如jQuery、lodash、Underscore、Backbone、Angular、React、Vue等,这些库和框架大幅提升了Web开发与维护效率。
但近几年,Web前端的发展已经趋乎于病态,各种各样的“轮子”层出不穷,Web前端的发展速度已经有超过Web前端开发人员的学习速度之势,将开发人员远远甩在了后面。新的技术不断涌现,有些新技术是我们工作中无法回避的技术栈。虽然我们明知道这些新技术在未来注定会被淘汰,但迫于工作的需要不得不追赶它们。新的“轮子”不断出现,旧的“轮子”还在更新,这就导致Web前端学习的疲劳性,而且这种疲劳是心理上的。
例如,Grunt学完,Glup来了,Glup学完,webpack又来了;又如less、sass、stylus,甚至刚学会一种新东西,转眼间就发现它已经被淘汰了;再如,公司团队要求掌握某些技术栈,你能不学吗?显然不能!
那么,我们该怎么办呢?“轮子”被造出来的初衷就是为了更好地解决相应的问题,它应该是能解决我们的问题的,而不是让我们惧怕学习它。在面对新的“轮子”时,不要盲目追赶,无论这些“轮子”出现或更新得有多快,最基础的核心知识是不变的。我们应该把自己的注意力放在问题本身上,而不是纠结于“轮子”,将更多的精力放在学习基础知识上。
Web前端的三大核心知识为HTML、CSS、JavaScript。在本书中,不会过多涉及HTML、CSS,而是将重点放在JavaScript上。
本书将从最基础的知识开始,循序渐进地讲解JavaScript的基本知识和高级技巧,力求内容简单易懂、清晰明了,通过大量实例带领读者学会Web前端开发中常用的JavaScript知识及开发技巧。