内容简介:
作为唯一所有主流浏览器都支持的脚本语言,JavaScript俨然已成为Web开发领域最具号召力的语言,但它的种种语言怪癖以及在各种浏览器间实现不一致等问题也为开发人员所诟病。2009年底,CoffeeScript横空出世。它吸收了JavaScript语言的精华,并添加了很多现代语言脚本的特性,很快便得到了大量Web开发人员的青睐。
本书由CoffeeScript重要贡献者Trevor Burnham操刀,从基础知识入手,全面详尽地介绍了CoffeeScript这门新语言。通过一个5×5拼字游戏,作者将CoffeeScript各方面的知识融入其中,通俗易懂地讲解了CoffeeScript如何与jQuery等非常流行的类库完美集成,如何游刃有余地结合Socket.IO实现Node.js双通道异步通信。每章结尾都有精心设计的习题,有助于读者巩固所学的CoffeeScript知识并更上一层楼。
掌握CoffeeScript,Web开发之旅将更轻松、快捷和优雅!
目 录
第1章 入门指南 1
1.1 安装CoffeeScript 1
1.2 CoffeeScript编辑器 4
1.3 “邂逅”coffee 5
1.3.1 编译为JavaScript 6
1.3.2 REPL 7
1.4 调试CoffeeScript 8
1.5 预备 9
第2章 函数、作用域和上下文 11
2.1 函数基础知识 11
2.1.1 访问arguments对象 13
2.1.2 条件表达式和异常 14
2.2 作用域:你在哪里看到它们 16
2.3 上下文 18
2.4 属性参数(@arg) 21
2.5 默认参数(arg=) 22
2.6 参数列(...) 24
2.7 项目:5×5游戏输入分析器 25
2.8 做得好,年轻的学徒 29
2.9 练习 29
第3章 集合与迭代 31
3.1 作为哈希表的对象 31
3.1.1 JavaScript基础知识:一节JavaScript补习课 31
3.1.2 精简的JSON 32
3.1.3 同名键值对 33
3.1.4 吸收操作符:'a?.b' 33
3.2 数组 34
3.2.1 区间 35
3.2.2 切分和剪接 35
3.3 集合的迭代 37
3.4 条件迭代 39
3.5 列表解析 40
3.6 模式匹配(或解构赋值) 41
3.7 项目:5×5单人游戏 42
3.8 进阶 48
3.9 练习 48
第4章 模块与类 51
4.1 模块:解构程序 51
4.2 原型的威力 53
4.3 类:原型函数 55
4.4 使用extends来继承 56
4.5 项目:重构5×5游戏 59
4.5.1 Dictionary类 60
4.5.2 Grid类 61
4.5.3 Player类 62
4.5.4 Console.Coffee接口 63
4.6 就如“一勺糖” 63
4.7 练习 64
第5章 jQuery Web交互开发 66
5.1 jQuery之道 66
5.2 操作DOM 67
5.3 学会选择 68
5.4 响应事件 69
5.5 项目:基于浏览器的5×5游戏 71
5.5.1 index.html 71
5.5.2 style.css 72
5.5.3 jq5×5.coffee 73
5.6 未来是jQuery化的 77
5.7 练习 77
第6章 Node.js服务器端程序 79
6.1 什么是Node.js 79
6.2 使用exports和require构建模块化代码 80
6.3 异步思想 81
6.4 项目:多人5×5游戏 84
6.4.1 5×5server.coffee 85
6.4.2 5×5client.coffee 89
6.4.3 都结束了 91
6.5 客户端、服务器端——有何不同 91
6.6 练习 91
附录A 练习答案 92
附录B 运行CoffeeScript的几种方法 98
附录C JavaScript开发者备忘录 102
家用游戏机简史 本书特色 本书以时间为轴,重新厘清了30余年游戏主机的成长历程,梳理了游戏产业的发展脉络。从幕后开发、技术变革、游戏策略等多重角度,解读五次游戏...
本书紧紧围绕当前大家所关注的3D打印技术,全方位地为读者解读3D打印技术的过去与未来及其行业应用现状,全书分为5个章节,分别介
《新时代交通运输领域军民融合深度发展研究》内容简介:全书从历史演进着笔,探讨了深度发展的目标任务、体系建设、运行机制、发展
《HarmonyOS应用开发》内容简介:本书内容基于HarmonyOS 2.0 Beta版。从技术层面上讲,HarmonyOS目前可以使用Java和JavaSc...
未来15年:全球化2.0会创造数以百万计的中产阶级,但这块市场肥肉只会被送到真正“懂”它的商家口中。每个新兴市场都会有特定的消
《Android 7应用程序开发教程》内容简介:Android系统是目前最为流行的智能手机操作系统之一,面向Android系统的应用开发是目前的技
《PaaS实现与运维管理》内容简介:《PaaS实现与运维管理:基于Mesos +Docker+ELK的实战指南》主要阐述了云计算中PaaS平台的实现与运
计算机系统结构(第四版) 本书特色 《计算机系统结构》内容丰富,取材适当,每章均有大量例题和习题,书末附有主要习题的参考答案。《计算机系统结构》可作为计算机专业...
《荷塘月色:朱自清精读》内容简介:《荷塘月色:朱自清精读》是“壹本”系列之一,从当下读者爱读、想读和需要读的角度,精选著名
《分布式系统与一致性》内容简介:一致性是非常重要的分布式技术。众所周知,分布式系统有很多特性,如可用性、可靠性等,这些特性
你想过可以通过一本书就学会Python吗?《HeadFirstPython(中文版)》超越枯燥的语法和甩法手册,通过一种独特的方法教你学习这种语
《因为喜欢,可迎万难:张爱玲传》内容简介:张爱玲,理解生活的深刻,动荡的人生染着轻盈的落寞,是一个可以与世界“顶级”小说家
《Web数据挖掘》旨在讲述这些任务以及它们的核心挖掘算法;尽可能涵盖每个话题的广泛内容,给出足够多的细节,以便读者无须借助额
《AcceleratedC++中文版》给人的印象会如此深刻呢?这是因为:●它一开始就向读者教导那些最有用的概念,而不是那些简单的注释读者
搜索引擎的本质是帮助用户更快、更方便、更有效地查找与获取所需信息。在不断改进搜索算法和提升性能(以技术为中心)的同时,关
SOLIDWORKS零件与装配体教程-2016版 本书特色 《solidworks零件与装配体教程》(2016版)是根据ds solidworks公司发布的...
Auto CAD 2008应用教程 内容简介 本书详尽介绍了*新版计算机辅助绘图软件——AutoCAD 2006,包括该软件的基本功能、使用方法和绘图技巧等内容...
《一分钟管理:影响管理者一生的管理法则(图文版)》内容简介:本书内容涵盖了战略、企业文化、团队建设、用人方法、绩效考核、管
Thisbookexplorestheintuitiveappealofneuralnetworksandthegeneticalgorithminfinanc...
JAVA持续交付 本书特色 本书完整介绍了Java软件开发的整个生命周期,还结合大量的成功实践经验,介绍了每个阶段可能会使用到的工具和技能。在基础设施已经极大完...