对JavaScript新手有经验的程序员的建议?

对JavaScript新手有经验的程序员的建议?,javascript,programming-languages,Javascript,Programming Languages,我有C/Unix的背景,在shell脚本编写方面有很多经验,还有一些关于Perl、elisp等的经验。但现在我正在从事一些工作,需要开发基于web的交互式界面,并且需要学习JavaScript。我的问题是,我在网上找到的所有学习JavaScript的资源似乎都是针对那些从未编写过程序的读者的,而他们的作者似乎也不怎么好。当我看到“验证用户输入以减轻服务器负载”是JS的一个伟大用途时,我想尖叫,我觉得我不能相信作者所说的任何其他东西。;-) 有没有人能为想要学习JS作为一种新语言的有经验的程序员推

我有C/Unix的背景,在shell脚本编写方面有很多经验,还有一些关于Perl、elisp等的经验。但现在我正在从事一些工作,需要开发基于web的交互式界面,并且需要学习JavaScript。我的问题是,我在网上找到的所有学习JavaScript的资源似乎都是针对那些从未编写过程序的读者的,而他们的作者似乎也不怎么好。当我看到“验证用户输入以减轻服务器负载”是JS的一个伟大用途时,我想尖叫,我觉得我不能相信作者所说的任何其他东西。;-)

有没有人能为想要学习JS作为一种新语言的有经验的程序员推荐好的资源?理想情况下,我希望从网上开始,但也欢迎死树推荐,特别是如果我可以在线预览它们的话。

但我会推荐这两本很棒的书,它们教会了我很多东西


道格·克罗克福德(Doug Crockford)是一本面向经验丰富的程序员的JavaScript好书。它很短,假设您知道自己在做什么,是自以为是的,不是教程。

我的建议是:忘记您对面向对象编程的了解。试图应用OO语言中的继承范例已经多次使JS代码的许多块变得过于复杂

原型不是类构造。对象实例化不是类实例化。“类”不是真实的

有很多方法可以得到你想要的。你甚至可以拥有类似于私人的东西——但它们不是方法或成员。它们只是局部范围。继承通常是伪造的,但结果好坏参半,并且普遍以数据隐藏为代价


Javascript是原型。它不是面向对象的。每当你想到“伙计,这里的界面太棒了……”之类的话时,请记住这一点。

来自Mozilla开发者网络的Javascript指南,一个简单但信息丰富的指南,在短时间内为初学者提供了JS的大图

看一看。它并没有涵盖所有内容,但它将使您转向惯用JavaScript编程——比如函数编程、闭包和原型。(在线版附带了一个沙盒教程环境。)毕竟,剩下的只是知道如何使用引用。

JavaScript:The Financial guide是我最喜欢的编程书籍之一:

这与克罗克福德给人的印象是(可以说是)一个狂热者这一事实相平衡。他会指示你“不要”使用部分语言。就像所有的狂热者一样,对一些书略知一二:)但是真的,+1是一本好书。是的,我刚刚在谷歌上预览过。作为你所说的一个例子,我听说过使用
-0
|0
等进行类型转换,我喜欢使用
0U+
等东西在C中转换为
无符号的
,但我感觉他强烈反对这种用法;-)谢天谢地,我来自C语言背景,而不是OO背景,所以我没有太多要忘记的东西。:-)哦那么我建议,jQuery:新手到新手,很遗憾,所有这三个相互关联的问题似乎都被删除了。堆栈溢出永远不会停止令人失望的关闭有价值的问题,现在删除内容?!