JavaScript忍者秘籍(第2版)

[美] John Resig(莱西格)

出版时间

2018-03-08

ISBN

9787115473264

评分

★★★★★

标签

编程

书籍介绍
这本书最打动人的地方,是它把JavaScript从'会写'推向'写明白'的那道坎。作者以jQuery创始人的视角,不满足于教你语法,而是逼你理解函数、作用域、闭包、生成器与promise如何真正协作——尤其是用generator与promise优雅处理异步代码这一章,被读者称为'一针见血'。它适合已经写过JS、却常在跨浏览器兼容、作用域控制、异步处理上踩坑的进阶者。需要提醒的是:中文版翻译质量争议极大,不少读者'磕磕绊绊果断弃坑找英文版',因此阅读时若感到拗口,未必是内容难,而是译笔的问题。真正值得反复咀嚼的,是它贯穿始终的'忍者'哲学——好程序员要掌握测试、性能分析与调试,而非只会堆砌代码。
作者简介
John Resig 是可汗学院(Khan Academy)的一名资深工程师,是jQuery JavaScript库的创建者,也是《JavaScript忍者秘籍(第1版)》和《精通JavaScript》的作者。 Bear Bibeault 编写软件已经超过30年,刚开始是通过100波特的电传打字机在控制数据网络超级计算机上编写井字程序。Bear有电气工程双学位,本应从事设计天线之类的技术工作,但自从他在数字设备公司从事第一份工作起,他就更着迷于编程。Bear还分别在 Dragon Systems、Works.com、Spredfast、Logitech、Caringo等诸多公司工作过。Bear目前是一名高级前端开发工程师,在一家对象存储软件的领先供应商工作,提供可伸缩性的海量存储和内容保护服务。 Josip Maras是克罗地亚斯普利特大学电气工程学院、机械工程学院、造船建筑学院的博士后研究员。他获得软件工程博士学位,论文题目是“在Web应用程序开发中实现自动复用”,其中包括使用JavaScript实现的JavaScript解释器。在他的研究中,他已经出版了十多篇科学会议和期刊论文,主要是分析客户端Web应用程序的处理程序。
AI导读
核心看点
  • jQuery创始人John Resig亲笔,深入剖析JS核心。
  • 系统讲解函数、闭包、原型及ES6/7新特性。
  • 从学徒到忍者,涵盖跨浏览器兼容与最佳实践。
读者共识
  • 内容极具深度,逻辑清晰,是JS进阶的经典之作。
  • 翻译水平普遍受诟病,阅读体验可能受影响。
  • 对函数和闭包的讲解透彻,能显著提升编程水平。
精彩摘录
  • "all morden browsers but IE"
  • "In order to be a good JavaScript developer you need to maintain the traits that most good programmers have including testing, performance analysis, anddebugging."
  • "• Firebug: The popular developer extension for Firefox http://getfirebug.org/ • IE Developer Tools: Included in Internet Explorer 8. • Opera Dragonfly: Included in Opera 9.5 and newer - also works with Mobile versions of Opera. • Safari Developer Tools: Introduced in Safari 3 and dramatically improv"
  • "• Firefox 2 and 3: Doing a typeof on the HTML <object/> element yields an inaccurate "function" result (instead of "object"), like so: typeof objectElem == "function". • Firefox 2: A little known feature: You can call regular expressions as if they were functions, like so: /test/("a test"). This can"
  • "For example, most JavaScript libraries end up supporting about 12 browser: The previous release, the current release, and the upcoming release of Internet Explorer, Firefox, Safari, and Opera."
  • "To start, it's important to realize what that the function context represents: The object within which the function is being executed."
  • "The two methods are quite similar to each other, as to how they're used, but with a distinction: How they set incoming argument values. Simply, .call() passes in arguments individually whereas .apply() passes in arguments as an array, as shown in Listing 2-20."
  • "A couple important aspect, to take note of, in this example. We're accessing a native object method (Array.prototype.push) and are treating it just like any other function or method - by using .call(). The most interesting part is the use of 'this' as the context. Normally, since a push method is pa"
目录
本书通过4个部分,让你从“学徒”晋升为“忍者”。
第1部分介绍我们后续学习的主题和所需要的工具。
第1章介绍JavaScript语言及最重要的特性,推荐目前我们开发应用时需要遵循的最佳实践,包括测试和性能分析。
因为我们对JavaScript的研究是基于浏览器上下文,因此在第2章中,我们介绍客户端Web应用的生命周期,这有助于我们理解在开发Web应用程序时JavaScript所扮演的角色。
第2部分重点关注JavaScript的核心支柱之一——函数。我们将研究为什么函数如此重要,函数之间的区别,以及定义和调用函数的细节内容。我们还将特别关注一个新的函数类型——生成器函数,它在处理异步代码时尤为有效。

显示全部
用户评论
错误的地方比较多,错别字拼写错误什么的。
翻译有点难读懂,书的内容不错
不要看中文版
小木屋图书。jQuery 作者合写的,适合具有一定基础的js程序员。本书图文并茂的详细的讲述了函数、闭包、生成器函数、promise、原型的原理和使用。其中使用代理(Proxy)记录日志、检测函数性能很有趣。从第12章开始讲 jQuery 核心的 DOM 操作、事件、跨浏览器兼容等较老的内容。
把开发者比作忍者也是一个很有意思的说法。(2020-04-20)
值得一看
代码和图片的讲解都非常非常详细,排版也很舒服,内容其实还挺基础的,以至于我觉得有些啰嗦…
这本书的函数闭包 和 事件循环..讲的真好
8.5 分吧,算是比较深入浅出的一本书,可以在高程红宝书看完后看看。
不好
下载
收藏