javascript基础教程_红宝书与我的JavaScript学习之路

本文由图灵社区阿狸不歌原创。

71cde09e0fc58015abaff77646b30f23.png

我的JavaScript入门书是Head First JavaScript Programming: A Brain-Friendly Guide,看过Head First系列的都知道这个系列是IT技术入门最容易的书。当时看的是英文版,欣闻图灵最近即将出版其中文版《Head First JavaScript程序设计》,推荐所有零基础想学JavaScript的童鞋都读一读这本书,看完后入门JavaScript绝对没问题。

1f11e80cfdce443acd85fe3aa9b0673e.png

学习过《Head First JavaScript程序设计》之后,对于阅读JavaScript的基础语法应该是没有太大问题了,但是因为《Head First JavaScript程序设计》作为一门入门型的书籍,并不会在(高级)细节上过多深入,所以当我们要进一步提升JavaScript代码阅读/编写能力的时候,肯定会遇到读不懂/搞不定的事情 —— 这是一件好事,这意味着我们要迈向JavaScript高级编程了,而《JavaScript高级程序设计(第3版)》正是这样一本符合我们追求上进需求的好书。

本书第三章用了大约50页的篇幅细致地介绍了JavaScript的基本语法,如果你哪里忘记了就重温一下,第四、五章又用了大约70页的篇幅详细介绍了变量、作用域和引用类型。如果你嫌《JavaScript高级程序设计(第3版)》太重,也可以拿一本薄的《JavaScript语言精粹》—— 又称蝴蝶书,只有100来页,可以很快看完,故名“精粹 ”。

蝴蝶书的作者是道格拉斯·克罗克福特(Douglas Crockford,JSON的缔造者),蝴蝶书对于了解JavaScript的基础知识,比如对象、数组、语法、作用域、闭包等等都颇有帮助,在JavaScript的代码风格上也给出不少好的建议。

8b68a6672c363bd2e22d45c1ee4481fd.png

进入到第六章,是面向对象的程序设计,这应该是本书的一个重点,也是每个JavaScript写手应该熟知的内容。本书推出之时,距ECMAScript 5.1版发布并成为ISO国际标准也没有多久,ECMAScript 5.1里是没有类的概念的,因此依据ECMAScript 5.1的标准来写OOP风格的程序与典型的面向对象语言(比如Java)有比较大的差别。

通过本章,你将学到JavaScript独特的面向对象的编程方式,抛弃“类”的概念和基于“类的继承”,学习基于原型的继承和构造函数。并且将学会如何创建对象、定义自己的类型、使用继承以及其他各种操作来充分使用对象。

本书作者 尼古拉斯·扎卡斯(Nicholas C. Zakas)可能觉得用JavaScript写OOP这个事情可能会对典型的Java程序员造成困扰,还专门写了一本《JavaScript面向对象精要》,深入探讨了原始类型和引用类型、函数、对象、构造函数和原型对象、继承和对象模式等主题和特性,如果嫌本书写的还不够,可以专门阅读扎卡斯的这本不足百页的面向对象精要。

8de019c4e7de559c64b743c124c430bd.png

函数是JavaScript世界的第一公民,如果说搞不清楚如何用JavaScript来写面向对象的程序还不算致命,要是搞不清楚函数表达式,那在JavaScript的世界里就基本没法混了。

JavaScript函数编程里,绕不过去的一个弯就是“闭包”,貌似也是很多前端面试必考的内容。本书、前面提到的蝴蝶书都对闭包做了详细解释。另外图灵出的《你不知道的JavaScript(上卷)》第一部分也是专门介绍JavaScript作用域和闭包的,可以共同借鉴参详。

eba34175045c0ffee9e44a5d9b069467.png

其实本书的英文名字是 Professional JavaScript for Web Developers(中文版译名省掉了 “for Web Developers”),也就是说本书其实主要是为Web开发者准备的,从第八章开始,本书为Web开发专门准备了三分之二以上的篇幅,如果你学习JavaScript是专门为了服务端开发,那么看完第七章就可以找《深入浅出Node.js》和《Node.js实战》了。

a57918b6d4425c9f985f37eeef126812.png

作为标准的前端JavaScript程序员,BOM和DOM、事件都是必备知识,本书用三分之一的篇幅涵盖了BOM和DOM的方方面面。当然,本书出来的时候,一些古老版本的IE浏览器还占据着统治地位,所以本书还不得不特别花了不少篇幅为IE开小灶,现在大部分前端程序员可能可以不那么提心吊胆地考虑浏览器的兼容性问题了。

关于DOM,图灵还有一本《JavaScript DOM编程艺术(第2版)》,翻译质量很高,语言通俗易懂,也是适合DOM入门的佳作。

9ff6cbdd4b787ef9aa70dccc02f4c3d4.png

本书剩下的三分之一篇幅则包含了前端开发的其余方方面面——HTML5、XML、JSON、Ajax、E4X、客户端存储等等,足以让我们领略Web开发会遇到的知识点,这每一个知识点又可以扩充为一本书。图灵这方面的书很多,诸如:《HTML5秘籍》《HTML5权威指南》《XML基础教程》《JSON必知必会》《Ajax高级程序设计》《客户端存储技术》等等……

e8eeda3d4f02e28da87deb754ecf19de.png

Nicholas C. Zakas在第24章介绍了JavaScript编程的最佳实践方法,着重于可维护性和性能。关于这两点,尼古拉斯专门还写了两本书,分别是《编写可维护的JavaScript》《高性能JavaScript》,有兴趣的童鞋可以深入钻研。

9f6ddb5deb63b149881a1c084a487443.png

关于ES6 / ES2015、ES2016、ES2017 ,《JavaScript高级程序设计(第3版)》出版的时候,ES6 还没有影呢,但是近几年来,JavaScript发展可谓日新月异,本书作者尼古拉斯也没有把读者们落下,于2016年出版了 Understanding ECMAScript 6: The Definitive Guide for JavaScript Developers,其中文版《深入理解ES6》也已经于近日出版发行,书中详细讲解了ES6在JavaScript对象类型、语法及其他方面激动人心的改变,是专门为熟悉JavaScript和ECMAScript 5的读者准备的指南,帮助大家理解ECMAScript 5和6之间的差异。

0764c2ee72bcfcdd910f098529026370.png

最后,大家可能会关心:出了这么多新技术,我们的JavaScript红宝书会不会更新啊?放心,Professional JavaScript for Web Developers 4th Edition 已经蓄势待发,连发售日期都已经定好了,就在2018年1月29日,让我们好好期待吧——

  • Get up to date with ECMAScript 6 and 7
  • New frameworks, and new libraries
  • Delve into web animation, emerging APIs, and build systems
  • Test more effectively with mocks, unit tests, functional tests, and other tools Plan your builds for future ES releases
90d96db27431050942f655db8c5d0a17.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值