《JavaScript语言精粹》

本书的作者Douglas Crockford是JavaScript开发社区最知名的权威,JavaScript的发明人Brendan Eich说他是“Yoda of lambda programming and JavaScript(lambda编程和JavaScript的精神领袖)”。他不仅仅给我们带来了JSON、JSLint、JSMin和ADSafe等等在JavaScript开发领域应用广泛且影响深远的作品,更重要的是给我们带来了受益终身的利用JavaScript进行高效开发的思想和风格,这就是本书的重要意义。

JavaScript曾是“世界上最被误解的语言”,因为它担负太多的特性,包括糟糕的交互和失败的设计,但随着Ajax的到来,JavaScript“从最受误解的编程语言演变为最流行的语言”,这除了幸运之外,至少还说明它是一个不错的语言。Douglas Crockford在这本书中剥除JavaScript糟糕的外衣,抽离出一个具有更好可靠性、可读性和可维护性的JavaScript子集,让你看到一门优雅的、轻量级的和非常富有表现力的语言。他从语法、对象、函数、继承、数组、正则表达式、方法、样式和优美的特性这9个方面来呈现这门语言真正的精华,这是语言最本质最优雅的部分,通过它们完全可以构建出高效的代码。他还通过附录列出了这门语言的糟粕和鸡肋部分,且告诉你如何避免它们。最后还介绍了JSLint,通过它的检验,能有效的保障我们写出优美高效的代码。

这是一本厚积薄发“薄”大精深的书籍,Douglas Crockford仅仅用了160页来道出JavaScript的语言本质,值得任何正在或者想从事JavaScript开发的人阅读,并且非常需要反复阅读。学习、理解、实践大师的思想,我们才可能站在巨人的肩上,才有机会超越大师,这本书就是开始。

我很高兴和淘宝UED的前端主管小马(赵泽欣)一起来翻译这本书,去年近5个月的翻译时间是一个非常艰苦而又痛快的学习过程。我们冒着“犯罪”的危险完成了翻译,现在我也很惶恐的推荐给大家,希望我们的努力能让读者读出本书的精华,更要读懂JavaScript的语言精华。

感谢你的关注、阅读、建议和批评。

  1. 购买《JavaScript语言精粹》
  2. 样章阅读
    1. 第一章. 精华
    2. 第十章. 优美的特性
  3. 勘误表
  4. 淘宝UED Blog:《JavaScript语言精粹》译者序及样章试读
  5. JavaScript大牛:Douglas Crockford

您或许有兴趣:

标签:, ,

作者:秦歌,时间:2009-04-02 23:45,归纳于:Javascript & DOM & AJAX,订阅:RSS 2.0,引用:Trackback

有评论 28 条,发表一条新评论 »

Macji说:2009-04-03 9:27 #1

看蝴蝶,看作者,看译者,绝对是牛书。

肉山说:2009-04-03 10:53 #2

恩,一定要去买本读一读,等手头上的《PPK on JavaScript》看完先

xiaorsz说:2009-04-08 22:04 #3

有时间了要好好看下!!
谢谢推荐!!

ulear说:2009-04-12 12:35 #4

问下老大,这本书几时能上市?

monica说:2009-04-13 10:48 #5

你好,我正在招聘java开发,前端的工程师和架构师,不是有没有人能推荐给我啊?

郁林说:2009-04-30 13:25 #6

好书,刚从当当上买了本!

rain-man说:2009-05-12 21:59 #7

自从Douglas Crockford在他的博客上挂上这本书就开始了关注这本书了,看了第一章的翻译很生动,看了章节讲的都是JavaScript与众不同的地方,太棒了。
Douglas Crockford写书 + 牛人翻译 = JavaScript.

青菜说:2009-05-14 23:00 #8

不知道我买到盗版了还是怎么了,这本书上面全是错误!
在29页有一个,30页也有一个。后面的还没看。

秦歌说:2009-05-14 23:11 #9

我会尽快再仔细看看这两页的,如果有可能请明示一下是什么错误,多谢。

cc说:2009-05-30 11:16 #10

书确实不错啊

cc说:2009-05-30 11:25 #11

请问ecmascript在哪里看啊
里面有的说参考ecmascript
但不知在那里能看到

秦歌说:2009-05-30 15:12 #12

http://www.ecma-international.org/publications/standards/Ecma-262.htm ECMAScript 3的规范可以在这个链接中看到。

cc说:2009-06-02 0:45 #13

书中很多for的递增都是 用i += 1
为什么不用i++呢

秦歌说:2009-06-02 23:06 #14

在书中112页 B.7 这一节中作者说 ++ — 容易促成一种不谨慎的编程风格,这样的代码造成了大多数的缓冲区溢出错误,且使代码往往变得过于紧密、复杂和隐晦。所以作者不再使用它们。

cc说:2009-06-03 0:33 #15

“这样的代码造成了大多数的缓冲区溢出错误”
这个是什么意思呢
能举个例子吗

cc说:2009-06-03 11:12 #16

还有我想知道书中的代码有没有提供下载

mage说:2009-07-16 16:51 #17

您好我看到这本书的封面有两种,,不知道怎么回事,一种是网站上的封面,还有一种是左下脚没有Yahoo标志的,请问这是怎么回事。

秦歌说:2009-07-16 22:07 #18

@mage:你看的真仔细啊,我站点的图是来自豆瓣http://www.douban.com/subject/3590768/,这个图出现的比较早,的确不是后来《JavaScript语言精粹》的真实的封面。两者的区别是YAHOO!press的位置,豆瓣的是在左下角,真实的是在左上角,我现在已经修正过来了。

mage说:2009-07-17 15:17 #19

秦歌回复好快啊,我现在在做基于YUI的项目,所以最近也在学习使用YUI2.7,也是在网站上搜索YUI找到了你的blog,感觉用惯了jquery再用YUI稍微有一些别扭,不过还好两三天算是有所了解了。

我喜欢这种黑底的网站,和我vim配色差不多,

还有回复秦歌一下,你说我真仔细,我很高兴,我觉得前端工程师仔细认真也是非常重要的,呵呵,说的有点严肃了啊,哈哈,我是一个性格活泼的JavaScript爱好者,爱开点玩笑。我昨天订了这本书,估计下周一能送到,继续学习,继续关注你的blog。

zy说:2009-07-21 12:32 #20

P39页中的函数存在错误,是不是应该修改如下:

var add_the_handles=function(nodes){
        var i;
        for(i=0;i<nodes.length;i++){
            nodes.onclick=function(e){
                return function(){
                    alert(e);
                };
            }(i);
        };
    };
turing说:2009-09-01 17:18 #21

原版代码如下:

// BETTER EXAMPLE

// Make a function that assigns event handler functions to
// an array of nodes the right way.
// When you click on a node, an alert box
// will display the ordinal of the node.

var add_the_handlers = function (nodes) {
    var i;
    for (i = 0; i < nodes.length; i += 1) {
        nodes[i].onclick = function (i) {
            return function (e) {
                alert(i);
            };
        }(i);
    }
};
秦歌说:2009-09-01 21:57 #22

@zy:您的修改意思上对的,但是也有一个小遗漏,就是nodes​.​onclick应该是nodes​[i].​onclick。谢谢turing同学给的原版代码是对的,中文版在排版的时候出错了,我们会联系出版社在再版的时候能有修改过来。

Autry说:2009-09-04 1:02 #23

原版代码如下:

// BETTER EXAMPLE

// Make a function that assigns event handler functions to
// an array of nodes the right way.
// When you click on a node, an alert box
// will display the ordinal of the node.

var add_the_handlers = function (nodes) {
    var i;
    for (i = 0; i < nodes.length; i += 1) {
        nodes[i].onclick = function (i) {
            return function (e) {
                alert(i);
            };
        }(i);
    }
};
crossyou说:2009-12-10 20:00 #24

这本书 确实 不在 已在 卓越上 网购了,呵呵

开发跨浏览器JavaScript时要注意的问题 « DDD的一亩三分地说:2010-01-30 21:54 #25

[...] 顺便推荐一本JavaScript书《JavaScript语言精粹 》,是大名鼎鼎的“O’Reilly”系列,我只看了试读的第一章节,斗胆推荐 在随网之舞的《JavaScript语言精粹》 @ 随网之舞有更详细的介绍。 [...]

web前端寒风说:2011-08-12 10:12 #26

抽时间去看看

阿牛说:2011-09-18 22:35 #27

楼主,你用的什么字体好,很好看

sean说:2012-05-31 13:40 #28

这本书断货好久了,什么时候再版呢?

发表一条评论

您可以在下面评论内容中使用下列XHTML标签:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

您或许有兴趣:


回到页眉