内容简介:
作为唯一所有主流浏览器都支持的脚本语言,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
《云计算安全与隐私》可以使你明白当把数据交付给云计算时你所面临的风险,以及为了保障虚拟基础设施和网络应用程序的安全可以采
《嵌入式系统开发之道:菜鸟成长日志与项目经理的私房菜》用平易朴实的语言,以一个完整的嵌入式系统的开发流程为架构,通过一位“
※随书附赫尔辛基城市设计现场导览地图北欧设计中最为极简、最具诗意的芬兰设计来自极地芬兰清透澄澈的冰雪灵感,强调创意根植于
《大清后宫的正面与侧面》内容简介:这里有你在影视剧中遇到的种种问题的正面回答—— 历史上真有甄嬛这个人吗? 帝王在后宫中的权
本书由畅销书《JavainaNutshell》的作者DavidFlanagan撰写,是公认的权威JavaScript程序员指南和参考手册。JavaScript是...
MATLAB计算机视觉与深度学习实战-赠在线交流卡和本书源码 本书特色 《MATLAB 计算机视觉与深度学习实战》详细讲解了 30 个 MATLAB 计算机视觉...
本书对早期Linux内核(v0.12)全部代码文件进行了详细、全面的注释和说明,旨在帮助读者用较短的时间对Linux的工作机理获得全面而
《高阶产品经理必修课》内容简介:本书以笔者多年管理总结的产品经理M-P能力模型出发,介绍该能力模型中的数据驱动相关内容。书中内
《电脑时代的先锋》内容简介:人类学家玛格丽特·米德认为,人类发展的历史将经历三种不同的文化:前喻文化是后代人必须向前代人
计算机在材料科学与工程中的应用 内容简介 本书内容包括:概述;材料科学研究中的数学模型及分析方法;材料科学研究中主要物理场的数值模拟;材料数据库与专家系统;计算...
《光明,那一页(精)》内容简介:本书为“四个一批”人才、光明日报社江苏记者站站长郑晋鸣的作品集。全书共收入郑晋鸣1998年以来
《Internet与WWW程序设计教程》(第3版)以大量生动、实用的示例讲述了如何编写多层的、客户/服务器的、数据密集的、基于Web的应用
《星星离我们有多远》内容简介:《星星离我们有多远》是一本深入浅出的天文学科普著作,为我们系统展示了历代天文学家如何兢兢业业
Auto CAD 2008应用教程 内容简介 本书详尽介绍了*新版计算机辅助绘图软件——AutoCAD 2006,包括该软件的基本功能、使用方法和绘图技巧等内容...
《Lightroom Classic原创高级实战教程》内容简介:本书讲授Lightroom Classic的高级实用性技法,分为基础篇、精通篇和高手篇。在基
《四象限理财:投资理财极简法则》内容简介:本书立足于四象限资产配置法,为普通投资者提供了一种合理规划资产的新思路。具体而言
《当你自信独立,才能无所畏惧》内容简介:你有没有在某一刻认真的问过自己:到底想成为一个什么样的姑娘?自己内心真正想要的是什
《陈世润自选集》内容简介:陈世润著的《陈世润自选集》所编选的文章是作者从事马克思主义理论与思想政治教育、科学社会主义与国际
Thisnew,expandedtextbookdescribesallphasesofamoderncompiler:lexicalanalysis,pars...
《所罗门王的宝藏》内容简介:犹太民族的所罗门国王既是智慧的代表,又是财富的象征。他死后多少个世纪以来,人们一直在寻找这批古