JavaScript前端开发案例教程
上QQ阅读APP看书,第一时间看更新

前言

FOREWORD

JavaScript是一种脚本语言,从诞生至今广泛应用于Web开发,可以实现网页的交互,为用户提供流畅美观的浏览效果。近几年,互联网行业对用户体验的要求越来越高,前端开发技术越来越受到重视,JavaScript作为Web前端开发领域中举足轻重的一门语言,如何能够快速、全面、系统地了解并掌握它的应用,成为Web开发人员的迫切需求。

为什么要学习本书

本书面向具有网页(HTML、CSS)基础的人群,讲解如何将JavaScript与HTML、CSS相结合,开发交互性强的网页。通过先易后难、从简入繁、从基础到高级的阶梯方式逐步深入讲解,将JavaScript基础知识和应用技术进行了综合讲解。

本书遵循基础知识先行、实用案例辅助、综合项目护航的原则,按照学习的难易度以及先后顺序,采用“知识讲解+案例实践”的混合方式来安排全书的内容,及时有效地引导初学者将学过的内容串联起来,培养分析问题和解决问题的综合运用能力。本书将抽象的概念具体化,学到的知识实践化,让读者不仅理解和掌握基本知识,还能根据实际需求进行扩展与提高,达到“学用结合”的效果。

如何使用本书

本书讲解的内容主要包括JavaScript基本语法、数组、函数、对象、BOM、DOM、事件等基础知识,以及正则表达式、Ajax、jQuery 等扩展知识,最后还提供了一个综合性的实战项目——“2048”网页游戏开发。全书共分为12章,分别对每章进行简要的介绍,具体如下。

第1章主要讲解JavaScript的基本概念,包括JavaScript的由来、特点、应用等。为了帮助初学者快速体验 JavaScript 编程,本章铺垫了一些基础知识,如编程实现数学运算、比较两个数字大小等。考虑到初学者在学习过程中经常会遇到函数、对象、事件等陌生名词,本章对这些基本的概念进行了通俗易懂的讲解,让读者理解这些技术出现的原因,建立学习的目标感和方向感。

第2~4章分别围绕 JavaScript 基本语法、数组和函数进行深入的讲解,这部分内容是JavaScript编程的基本功,只有准确理解和熟练掌握了这部分内容,才能够解决实际开发中的一些基本需求。为了避免学习过程枯燥乏味,在课程中安排了九九乘法表、省份城市的三级联动、网页计算器等趣味案例,对重点知识进行强化练习,使学习情况得到即时反馈。

第5章主要讲解对象相关的内容。近年来出现了许多流行的JavaScript框架和模板引擎,从侧面反映了动态网页显示逻辑的开发逐渐从后端转向前端,这就对前端代码的可维护性、可扩展性提出了更高的要求。为此,本章讲解了 JavaScript 自定义对象、内置对象、代码调试、原型与继承等内容,通过学习这些课程,可以帮助读者提高代码编写的质量,为模块化开发、框架开发、团队协作开发等场景奠定基础。

第6~8章分别讲解BOM、DOM和事件,这些技术与浏览器和网页密切相关。诸如限时秒杀、定时跳转、购物车等交互功能的开发都离不开这些技术。开发人员甚至可以将贪吃蛇、俄罗斯方块这些经典游戏搬到网页上,将网页转变成支持用户操作的界面。

第9章讲解正则表达式的基本语法,以及在JavaScript中的使用。正则表达式经常用于对一些有规律的字符串进行处理。例如,验证用户填写的表单、查找和替换文本、抓取内容等。在实际开发中,通过正则表达式可以用简短的几行代码,完成原本可能需要几十甚至上百行代码的工作,极大地方便了对字符串的处理。

第10章讲解Ajax技术。Ajax是Web开发中非常重要的一项技术,它使得客户端网页可以与服务器端进行异步通信。利用Ajax技术,可以在网页上开发在线聊天、自动接收消息、无刷新分页等需要与服务器通信的程序,而不需要安装任何额外的浏览器插件,极大增强了用户体验。

第11章讲解jQuery的使用。jQuery是JavaScript开发中的利器,它简化了DOM操作,用更少的代码完成更多的功能。即使对于JavaScript基础非常薄弱的新手,也能通过jQuery轻松完成许多功能的开发。读者在掌握了 JavaScript 面向对象等课程后再来学习本章节,可以更好地理解jQuery的实现原理,借鉴jQuery的设计思想来编写简洁、高质量的代码。

第12章讲解了实战项目2048网页游戏的开发。游戏编程不仅有趣味性,也具有一定的难度,非常考验开发人员的技术功底。本章不仅完成了游戏所有功能逻辑的开发,对于代码也进行了合理的封装,为后期维护、修改和扩展提供便利。

在上面所列举的12章中,第1~8章是基础课程,主要帮助初学者奠定扎实的基本功;第9~11章是对扩展技术的讲解,这些章节内容比较复杂,希望初学者多加思考,认真完成书中所讲的每个案例;第12章的实战项目综合运用了前面的知识与技术,在完全掌握后,读者还可以尝试开发贪吃蛇、俄罗斯方块等其他类型的游戏。

在学习过程中,读者一定要亲自实践本书中的案例代码。如果不能完全理解书中所讲知识,读者可以登录博学谷平台,通过平台中的教学视频进行深入学习。学习完一个知识点后,要及时在博学谷平台上进行测试,以巩固学习内容。

另外,如果读者在理解知识点的过程中遇到困难,建议不要纠结于某个地方,可以先往后学习。通常来讲,通过逐渐地学习,前面不懂和疑惑的知识也就能够理解了。在学习编程的过程中,一定要多多动手实践,如果在实践的过程中遇到问题,建议多思考,理清思路,认真分析问题发生的原因,并在问题解决后总结出经验。

致谢

本书的编写和整理工作由传智播客教育科技股份有限公司完成,主要参与人员有吕春林、陈欢、韩冬、乔治铭、高美云、马丹、李东超、王金涛、刘晓强、韩振国等,全体人员在近一年的编写过程中付出了很多心血,在此表示衷心的感谢。

意见反馈

尽管我们付出了最大的努力,但书中难免会有不妥之处,欢迎各界专家和读者朋友们来函给予宝贵意见,我们将不胜感激。您在阅读本书时,如发现任何问题或有不认同之处可以通过电子邮件与我们取得联系。

请发送电子邮件至:itcast_book@vip.sina.com

黑马程序员

2017年12月1日于北京