首页 > 学习node.js是否需要先学习Javascript?

学习node.js是否需要先学习Javascript?

最近和朋友要做一个项目,本来打算用java来做,但感觉学习曲线太大,所以决定采用node.js,想问一下学习node.js是否需要先学习Javascript?然后求推荐点入门书籍或资料。


当时是有javascript基础最好了,给你个小项目的源码照着做做;
https://github.com/hubwiz/example-node


要学js,但是浏览器内的js可以不学


答案是肯定的,而且你还必须非常精通js...我就是死在这个上面的...祝你好运


Node 的曲线未必比 Java 要平缓, Javascript 必须是基础,浏览器部分不必看,但是想学好,犀牛书是一定要看的。

要说快速上手,Python 或 PHP 吧,不说提高,只论快速做出东西, 这俩对付起来速度还挺快。


需要学前面的ECMAScript。看完之后,后面的dom和bom就不用看了,直接看node的官方api文档就好。


要学javascript的。我也是有javascript基础,才学nodejs的。
这里有nodejs的资源。(大牛博客站点,教程,好文章等。)
https://github.com/edagarli/programming-articles-zh_CN


肯定的啊 因为node.js 就是在服务器端执行的javascript


这是肯定的,Node平台需要用javascript语言来实现程序,所以对于楼主所问,javascript的基础是要有的,还要有HTML、CSS、勤看API的能力与基础。javascript的基础可以参考书籍《Javascript高级编程 第三版》进行恶补基础。


楼上说的很有道理,java太麻烦,用了python以后不爱再用java了,ruby on rails web项目已经完美了。php的laravel可以说事php 的ror,CI更简单,但是理念没有Laravel先进。要是连javascript还要现学的话还不如学一下php,再用个mvc框架呢。js想写好真不太简单,更别说nodejs 在express框架


可以先把javascript的基础语法看了,因为node.js是构建在javascript基础之上的,盖房子不能没有砖吧~

然后可以看看现成的一些demo,熟悉一下,找找感觉。

说是找找感觉,其实是让你适应node.js的异步编程模式,等你这个适应了,那node.js上手的速度就快的飞起。


学写文章之前是否需要先学认字?


以我个人的经历来看,不需要。

前端的 JavaScript 教程很多时候有很多奇怪的关注点,比如说 undefined 与 null 有哪些区别啊,为什么 == 不如 === 啊(我观察了一下,我写的所有小 Node.js 项目这两者毫无区别),或者莫名其妙的东西相加起来的和是什么。相反,我在 Node 里遇到的几乎所有对象都是……我也不知道叫啥了,对应 C 的 POD?

而且现在后端用 Traceur 那么方便,transpile 一下 ES6 就可以上了,都不需要看原型链就能写 class,多好。

需要注意的几个点大概有:

那个 bug 真坑爹啊……


Javascript编程精粹
Node.js编程指南


是这样:
学javascript,
不要学DOM


可以使用typescript,或者coffeescript,来开发nodejs,适合之前写 类 形式语言(java)的同学,能很快上手。


恩,javascript的基本语法,函数还是很有必要的,推介《javascript高级程序设计》和朴灵的《深入浅出nodejs》,知识链接http://.com/a/1190000000348772


要,而且必须,而且还得精通。node 是 服务端的 javascript。
入门教程:

node 简介:
http://www.nodebeginner.org/index-zh-cn.html
node web框架 express:
http://www.csser.com/board/4f77e6f996ca600f78000936

入门教程汇总:
http://www.cnblogs.com/lhb25/p/nodejs-tutorials-and-resources.html


我在只会写alert("hello world!")时,开始了写nodejs,nodejs入门并不难.
照着一些案例代码写,开始可能很不习惯异步的写法,于是就使用async库.
传统数据库设计不够简介,于是就使用levelup.
当然javascript的特性不了解难免会
采坑,边采边写吧,理解和记忆都会很深刻.
比如在异步里不小心用了全局变量,就使用变量时少写了var,就悲剧了.


如果我说不用是不是会被吐槽。因为我是几乎0基础上手nodejs的。不过如下知识是必备的:
1、一门其他语言的使用经验,如php,c++等
2、熟悉面向对象思想,还有js的面向对象和模块化的编程思想
3、熟悉nodejs的异步模型,其实说白了就是异步回调的基本原理。
4、熟悉json的使用

如果是做web开发,恐怕要从express开始,一些url解析的知识也是必备的。


只说初级的学习曲线,以做一个 Web 项目为考量范围,Node.js 的学习曲线未必为会比 Java 平缓,特别是你还不会 Javascript 的前提下。我个人不推荐这么选,如果当前的紧急目标是实现一个 Web 项目,那么 Ruby 的 Rails 框架和 Python 的 Django 框架还有 PHP 的 Laravel 框架都是比较容易上手的,Java 的 Play 也可以一试。

如果问我的推荐?Rails(因为别的我不熟……)


浏览器端完整的JavaScript实现是由以下3个不同部分组成的:ECMAScript、文档对象模型、浏览器对象模型。

对于服务器端,以上三部分你就只需要看ECMAScript相关的内容就行了,剩下的东西是Node.js独有的知识点,看官方文档即可。


你问的这个问题就像是问看英文书要不要学习英语一样
Node的资料可以看Cnode社区的汇总:
千里之行始于足下,node.js资源中文导航

【热门文章】
【热门文章】