在一个周末学习JavaScript?

类似于这个问题 ,我想知道如果有经验的JavaScript开发人员有他们使用的任何网站的例子,以获得在24/28小时JavaScript的基础知识? 我曾看过道格拉斯·克罗克福德的Google技术讲座,我买了这本书“Javascript:The Good Parts”,但我没有时间阅读。

这里是我学习语言的很好的资源清单:

  • Mozilla开发人员中心:核心JavaScript 1.5指南
  • 雄辩的JavaScript (交互式教程)
  • 学习高级JavaScript (交互式教程)
  • QuirksMode (浏览器兼容性信息的主要来源)
  • JavaScript的重新介绍 (大文章)
  • 道格拉斯克罗克福德video系列
  • 面向对象的JavaScript简介
  • JavaScript原型inheritance
  • ECMAScript语言规范

工具:

  • 一个debugging器
    • Firefox的Firebug
    • 歌剧蜻蜓
    • 开发人员工具 (Safari / WebKit)
    • IE8开发工具

你这个问题的重要部分是

[如何做]有经验的Javascript开发人员…在24/28小时内获得Javascript的基础知识

在一天,一周,一个月或一年的时间里,你不可能获得经验。 经验是您在多年努力工作中获得的东西 – 遇到错误,学习最佳实践,重写四年前编写的代码,并问自己:“我为什么这样做”,优化远远不够 – 比完美的环境…

话虽如此,如果你只有一个晚上学习足够让你危险,那么从底部开始,继续前进。 Daniel Vassallo已经给了你一个非常好的链接,并且不止一个人build议了W3School来快速浏览Javascript和DOM。

但是不要以任何开始。 相反,从明天开始,你可以确定你想用JavaScript来做什么。 要做到这一点,你需要问自己两个简单的问题。

你的程序专业水平是什么? 你能用CC++编写复杂的algorithm,偶尔也会碰到汇编器的一些变种吗? 你有没有曾经用像C#Java这样稍微“更高级”的语言来做一个体面的大型项目? 你至less知道一种脚本语言吗? 或者,“function编程”,“基于类的inheritance”和“冒泡sorting”这些短语对你来说毫无意义? 如果你处在前三类中的任何一个,那么在 Internet 上稍微介绍一些更好的 教程 ,或者快速查看一个或 两个 Stackoverflow 问题 ,就可以立即开始运行。 如果你在最后一个类别,那么你可能会从一般的编程基础开始。 不pipe你将要学习的环境如何。 这给我们带来了第二个问题

你的平台是什么? 你打算用node.js做一些服务器端编程吗? 也许你打算在RhinoJScript环境中开发一些实用程序? 如果出现这两种情况,那么阅读您正在开发的平台的文档将使您比阅读DOM更好。 另一方面,如果您正在计划开发Web,那么您无法比使用Firebug扩展插件更好地开发Firefox ,并开始构build您将在明天工作的简化版本。

如果这些都不会对你有任何帮助,那么希望你读完之后,其他人可以用更合适的方式来回答这个问题……这就是Stackoverflow的美妙之处。

如果您从W3Schools教程开始 ,那么最多只需几个小时即可完成。 在剩下的时间里,我会build议观看以下博客文章中列出的video讲座:

  • 通过video讲座学习JavaScript编程语言 Peteris Krumins

这篇博客文章的作者在每个video演讲中都写了非常详细的观点,所以你可以清楚地知道讨论的内容。 会谈由Douglas Crockford , John Resig和Nicholas Zakas提供 ,他们都是JavaScript领域的重要人物。 这些应该从你周末的相当一大块,但他们应该作为一个很好的介绍,当你通过“ 好部分 ”的书。

JavaScript是一种非常有performance力的语言,我希望学习它会很有趣。 在上述谈话中,您可以真正感受到演讲者的热情,他们描述了语言的一些优秀特性,例如closures和一stream的function 。 请享用!

如果你正在学习Javascript,那么值得检查一下jQuery和Prototype,因为它们将帮助我们编写跨浏览器JavaScript以及一些很好的资源来执行一些像JS这样的JS中的棘手任务。

我第二W3Schools参考。 我也喜欢Javascript的短语手册 ,它有真实世界的例子和每个简短的解释。 不要进入语言的历史或理论,如果你想在一个周末尽可能多地填充内容,这可能太多了。

我或多或less地处于你的处境。 我做的是

  • 我读了“javascript,好的部分”。 这是一本好书,但不要从字面上理解。 例如,它的使用对象,完全忽略了新的操作符和本地对象实例化机制,这是坦率的过分。 因此,要好好学习基于原型的机制。

  • 采取jQuery和学习它使用。 请记住,jQuery是一个伟大的库来操纵网页DOM。 添加节点,删除节点等等。 jQuery抽象了许多依赖于浏览器的操作,所以你不会因浏览器不兼容而生气。

  • 修补程序,当你发现自己在一个麻烦的地方,使用FireBugfind麻烦。 做小一点的例子,对没有使用var关键字引入的variables保持警惕,并且始终考虑到this是指拥有给定例程的对象,这可能是意想不到的。

Javascript(和DOM上的JS)是一种很好的语言,但是它的逻辑有时候可能会令人费解。 不要放弃。 一旦你了解它是如何工作的,这是相当直观的。

codecademy是非常好的网站,学习不仅是JavaScript,但HTML和CSS和一些更多的东西。 这个网站是有点不同于其他人。 因为你会交互地在这个网站学习东西。