nodejs学习笔记之安装、入门

由于项目需要,最近开始学习nodejs。在学习过程中,记录一些必要的操作和应该注意的点。

首先是如何安装nodejs环境?(我用的是windows 7环境,所以主要是windows 7的例子。如果想看linux下的安装可以参考http://www.cnblogs.com/meteoric_cry/archive/2013/01/04/2844481.html)

1. nodejs提供了一些安装程序,可以去官网(http://nodejs.org/download/)按照自己的机器进行下载,下载完成后,就可以进行安装了

1.1 ctrl+r 输入cmd打开控制台,运行node -v 显示node版本,如果正常,说明安装成功

1.2 输入node进入REPL(read-eval-print loop)环境,一个交互式的环境。可以输入node后,直接输入JS代码执行;也可以执行js文件,输入node example.js。

2. webstorm+nodejs,原则上使用任何编辑器都可以,这里建议使用webstorm,他集成了node的开发环境(webstorm下载地址:http://www.jetbrains.com/webstorm/)

2.1 下载并安装webstorm

2.2 开启webstorm并新建项目

2.3 点击设置图标进行设置

2.4 选择node.js and NPM,然后点击configure就可以下载nodejs源码包,在以后开发中可以进行提示和查看源码,下载完成后,点击确定生成设置就行

2.5 新建一个helloWorld.js,右键运行helloWorld.js文件,就会在webstorm的控制台显示hello world

其次理解nodejs里的一些概念

1. 模块(module)

在nodejs中将不同的功能的js放在一个文件,这个文件就是一个模块,路径就是模块名。每一个模块都有三个预先定义的变量:require、exports、module

1.1 require用于在当前模块引入其他模块

 var http = require(‘http‘);

  

1.2 exports当前模块的导出对象,用于导出模块公有办法和属性。通过requrie得到当前模块的exports对象。

 exports.hello = function() {
            console.log(‘hello world!‘);
        }

  

1.3 module可以访问当前模块的一些相关信息,使用最多的是替换当前导出模块

 module.exports = function() {
            console.log(‘hello world!‘);
        }

  

2. 包(package)

包是用来实现一个大的功能,期间可能会使用到其他模块

同时该目录下还有package.json和README.md

使用第三方包可以在这里查询:https://www.npmjs.org/,也可以将自己的包上传。

再次是要查看api文档完成自己想要实现的功能

英文文档:https://www.npmjs.org/doc/ 中文文档:http://nodeapi.ucdok.com/#/api/all.html

最后就是实践。

在后续的学习过程中,会做一些的实践。

参考:

http://nqdeng.github.io/7-days-nodejs/

nodejs学习笔记之安装、入门,布布扣,bubuko.com

时间: 2024-08-01 10:44:16

nodejs学习笔记之安装、入门的相关文章

node.js在windows下的学习笔记(1)---安装node.js

1.首先打开http://www.nodejs.org/ 2.选择DOWNLOADS,跳转到下面的画面,我的系统是windows7的32位.所以选择.msi的32bit版本. 3.下载后,得到一个5.43MB大小的安装包, 4.运行安装包 点击next 打个勾,点击next 选择安装目录 最后,安装成功啦 node.js在windows下的学习笔记(1)---安装node.js,布布扣,bubuko.com

Nodejs学习笔记(八)--- Node.js + Express 实现上传文件功能(felixge/node-formidable)

目录 前言 formidable简介 创建项目并安装formidable 实现上传功能 运行结果 部分疑惑解析 写在之后 前言 前面讲了一个构建网站的示例,这次在此基础上再说说web的常规功能----文件上传,示例以一个上传图片的功能为例子 上传功能命名用formidable实现,示例很简单! PS:最近比较忙,距上一次更新已经比较久了^_^! formidable简介 nodejs原生实现上传还是比较麻烦,有兴趣的自已去参考一下网上有网友写的代码 这里选择了formidable,也是githu

Nodejs学习笔记(三)——一张图看懂Nodejs建站

前言:一条线,竖着放,如果做不到精进至深,那就旋转90°,至少也图个幅度宽广. 通俗解释上面的胡言乱语:还没学会爬,就学起走了?! 继上篇<Nodejs学习笔记(二)——Eclipse中运行调试Nodejs>之后,代码编写环境就从Sublime转战到Eclipse下,感觉顺手多了.于是就跟着Scott老师学起了Nodejs建站的课程(推荐大家点进去看看),踏上了未爬先走的路子. 作为一个白里透白的小白来说,今天主要记录下如何用Nodejs搭建一个小小的网站,以及自己对于这种Nodejs建站的运

NodeJS学习笔记(一)——搭建开发框架Express,实现Web网站登录验证

JS是脚本语言,脚本语言都需要一个解析器才能运行.对于写在HTML页面里的JS,浏览器充当了解析器的角色.而对于需要独立运行的JS,NodeJS就是一个解析器.每一种解析器都是一个运行环境,不但允许JS定义各种数据结构,进行各种计算,还允许JS使用运行环境提供的内置对象和方法做一些事情.例如运行在浏览器中的JS的用途是操作DOM,浏览器就提供了document之类的内置对象.而运行在NodeJS中的JS的用途是操作磁盘文件或搭建HTTP服务器,NodeJS就相应提供了fs.http等内置对象.E

MongoDB 学习笔记一 安装以及基础命令

一.MongoDB安装配置 1.获取最新版本: wget http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.0.2.tgz 2.解压缩即可执行 tar zxvf mongodb-linux-x86_64-2.0.2.tgz tar zxvf mongodb-linux-x86_64-2.0.2.tgz cd /usr/mongodb-linux-x86_64-2.0.2/bin 但是在运行前,需要创建mongodb需要的存放数据和日志的

现代C++学习笔记之二入门篇2,数据转换

static_cast:    这种强制转换只会在编译时检查. 如果编译器检测到您尝试强制转换完全不兼容的类型,则static_cast会返回错误. 您还可以使用它在基类指针和派生类指针之间强制转换,但是,编译器在无法分辨此类转换在运行时是否是安全的. dynamic_cast: dynamic_cast在运行时检查基类指针和派生类指针之间的强制转换. dynamic_cast 是比 static_cast 更安全的强制类型转换,但运行时检查会带来一些开销. const_cast:    con

nodejs学习笔记(基于v7.4.0)

nodejs学习笔记 一.buffer: 全局对象(单例   Buffer.from   Buffer.alloc   Buffer.allocUnsafe ) 编码类型 描述 ascii 仅仅用于7位ascall数据编码,速度快,如果设置了将会剥离高位 utf8 多字节的编码的Unicode字符,网页文档大部分默认都为它. utf16le 小端编码的Unicode字符,2或者4个字节 ucs2 utf16le的别名 base64 Base64是网络上最常见的用于传输8Bit字节代码的编码方式之

nodejs学习笔记_nodejs和PHP在基础架构上的差别--共享状态的并发

绝大多数对于Node.js的讨论都把关注点放在了处理高并发能力上,做开发的时候一定要明确node内部做出的权衡,以及node应用性能好的原因. node 为javascript引入了一个复杂的概念,:共享状态的并发. node採用一个长期执行的进程 而php在apache中会产生多个进程 例如以下图所看到的: 代码验证: PHP: <?php $i = 0; $i++; echo $i nodejs: var http = require('http'); var i=0; http.creat

MySQL学习笔记之一 MySQL入门

本人之前接触的关系型数据库主要是oracle和sqlserver,而对于mysql知之甚少,但查阅网上资料发现,mysql与oracle非常相似,所以学起来应该不会很费劲,在总结的时候可能更多的把关注点放在它与oracle的不同之处. 一.简介 MySQL是一个真正的多用户.多线程SQL数据库服务器.SQL(结构化查询语言)是世界上最流行的和标准化的数据库语言.MySQL是一个客户端/服务器结构的实现, 它由一个服务器守护程序mysqld和很多不同的客户程序和库组成. MySQL的普及并不局限于