有哪些好的资源可以学习 Javascript 的最佳实践?我主要关心什么时候应该是一个对象,什么时候应该在 DOM 中跟踪它。此外,我想更好地学习如何组织我的代码,以便于单元测试。
8 回答
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。
我在某种程度上不同意“使用框架”的说法。太多人盲目地使用框架,对幕后发生的事情知之甚少或根本不了解。
我喜欢Douglas Crockford 的JavaScript:The Good Parts,尽管它完全专注于语言并完全忽略了 DOM。
如果您不想阅读,可以观看此视频:Doug Crockford 的 JavaScript the good parts。
YUI Theatre有一堆视频(一些带有成绩单),由 Steve Souders、Douglas Crockford、John Resig 和其他人制作,内容涉及 JavaScript、YUI、网站性能和其他相关主题。
Youtube上也有关于 jQuery 和其他框架的非常感兴趣的谷歌技术讲座。
你可以从Pro JavaScript Techniques中学到很多东西,我期待着 Resig 即将出版的 JavaScript Ninja 的秘密。
作为 Crockford 书的附录,您可能还想查看这篇文章Code Conventions for the Javascript Programming Language。我还有一个稍微不同的建议:与其直接使用 JS 库,不如自己创建一个?你可能会写一个糟糕的库(就像我一样),但你会在这个过程中学到一些东西。您有可以用作模型的现有示例。另外,为了帮助您了解 JS 设计模式,我将推荐另一本书,“Pro Javascript Design Patterns”。