34

有哪些好的资源可以学习 Javascript 的最佳实践?我主要关心什么时候应该是一个对象,什么时候应该在 DOM 中跟踪它。此外,我想更好地学习如何组织我的代码,以便于单元测试。

4

8 回答 8

36

Seconding Javascript: The Good Parts和 Resig 的书Javascript Ninja 的秘密

以下是 Javascript 的一些提示:

  • 不要污染全局命名空间(将所有函数放入对象/闭包中)
    • 看看YUI,它是一个巨大的代码库,只有 2 个全局对象:YAHOO 和 YAHOO_config
  • 对单例使用模块模式(http://yuiblog.com/blog/2007/06/12/module-pattern/
  • 让您的 JS 尽可能地可重用(jQuery 插件、YUI 模块、基本 JS 对象。)不要编写大量的全局函数。
  • 不要忘记改变你的变量
  • 使用 JSlint: http: //www.jslint.com/
  • 如果您需要保存状态,最好使用对象而不是 DOM。
于 2008-09-02T16:31:14.143 回答
9

我在某种程度上不同意“使用框架”的说法。太多人盲目地使用框架,对幕后发生的事情知之甚少或根本不了解。

于 2009-02-01T11:48:50.697 回答
5

我喜欢Douglas Crockford 的JavaScript:The Good Parts,尽管它完全专注于语言并完全忽略了 DOM。

于 2008-09-02T14:59:23.007 回答
4

如果您不想阅读,可以观看此视频:Doug Crockford 的 JavaScript the good parts

于 2009-10-08T21:39:15.013 回答
2

可能最重要的事情是使用一个框架,例如jQuery原型,来消除浏览器之间的差异,并使事情变得更容易。

于 2008-09-02T14:53:55.640 回答
2

YUI Theatre有一堆视频(一些带有成绩单),由 Steve Souders、Douglas Crockford、John Resig 和其他人制作,内容涉及 JavaScript、YUI、网站性能和其他相关主题。

Youtube上也有关于 jQuery 和其他框架的非常感兴趣的谷歌技术讲座。

于 2009-06-07T05:18:06.663 回答
1

你可以从Pro JavaScript Techniques中学到很多东西,我期待着 Resig 即将出版的 JavaScript Ninja 的秘密

于 2008-09-02T16:13:33.983 回答
1

作为 Crockford 书的附录,您可能还想查看这篇文章Code Conventions for the Javascript Programming Language。我还有一个稍微不同的建议:与其直接使用 JS 库,不如自己创建一个?你可能会写一个糟糕的库(就像我一样),但你会在这个过程中学到一些东西。您有可以用作模型的现有示例。另外,为了帮助您了解 JS 设计模式,我将推荐另一本书,“Pro Javascript Design Patterns”。

于 2009-02-01T13:07:09.710 回答