1.

  node -v 查看版本

  node -e --js代码

  node --进入编辑模式

  Ctrl+C 退出编译模式

var http=require('http')
http.createServer(function(req,res){
res.writeHead(200,{'Content-Type':'text/html'});
res.write('<h1>Hello world</h1>');
res.end('<p>china</p>');
}).listen(3000);

   将文件保存为 app.js,进入使用命令行进入app.js 所在没得目录,启动服务器。

  在浏览器中输入 http://localhost:3000/,即可看到页面内容。

  

npm -install -supervisor -g //全局模式

  2.全局对象与全局变量

    所有属性都可以在程序中的任何地方访问,即全局变量。

    Node.js的全局对象是global,Js中,通常window是全局对象。

    global最根本的作用是作为全局变量的宿主。

    满足以下条件称为全局变量。

    1.在最外层定义的变量。

    2.全局对象的属性。

    3.隐式定义的变量(未定义直接副职的变量)

    在Node.js中不可能在最外层定义变量,因为所有用户代码都是属于当前模块的,而模块本身不是最外层上下文。

    因此,不提议全局变量。

  3.process 用于描述当前Node.j进程状态的对象。

    (1) process.argv 命令行参数数组

      我们在G\nt\argv.js,

      argv.js----- console.log(process.argv)

        运行,输入 G:\nt>node argv.js xianrongbin liudehua

           输出: [ 'node', 'G:\\nt\\argv.js', 'xianrongbin', 'liudehua' ]

     (2)process.stdout 标准输出流

       console.log() 底层是用process.stdout.write()实现。

       (3)prcess.stdin是标准输入流,初始时它是被暂停的

process.stdin.resume();
process.stdin.on('data',function(data){
process.stdout.write('read from console======== '+data.toString());
})

      运行:如果我们输入: this is node demo

          则输出  rread from console======  tis is node demo

     (4)process.nextTick(callback)的功能是为事件循环设置一项任务。

    Node.js会在下次事件循环相应时调用callback。Node.j适合IO密集型应用,而不是计算密集型应用。

    如下:

function doSomething(args,callback){
somethingComputeBefore(args);
callback();
} doSomething('',function onEnd(){
compute();
});

  假如somethingComputeBefore()与compute()是两个较为耗时的函数,调用

  doSomething()先调用 somethingComputeBefore(),然后立即调用回调函数,在onEnd()中又会执行compute(); 

  可以改下

function doSomething(args,callback){
somethingBefor(args);
process.nextTick(callback);
}

  使用process.nextTick()后,改写后的程序会把上面耗时的操作拆分为两个事件,减少每个事件的执行时间。

     

     

node.js 基础学习笔记1的更多相关文章

  1. node.js 基础学习笔记3 -http

    http模块,其中封装了一个高效的HTTP服务器和一个建议的HTTP客户端 http.server是一个基于事件的HTTP服务器 http.request则是一个HTTP客户端工具,用户向服务器发送请 ...

  2. node.js 基础学习笔记2

    Module和Package是Node.js最重要的支柱. Node.j 提供require函数来调用其他模块,而且模块都是基于文件.模块和包区别是透明的,因此常常不作区分. 1.模块和文件一一对应. ...

  3. node.js 基础学习笔记3 -express

    1.工作原理 当通过app.js建立的服务器时,会看到一个简单的页面.返回页面时,浏览器会向服务器发送请求.app会解析请求的路径,调用相应的逻辑,调用对应的视图模板,传递对象数值,最终生成HTML页 ...

  4. handlebars.js基础学习笔记

    最近在帮学校做个课程网站,就有人推荐用jquery+ajax+handlebars做网站前端,刚接触发现挺高大上的,于是就把一些基础学习笔记记录下来啦. 1.引用文件: jquery.js文件下载:h ...

  5. 两万字Vue.js基础学习笔记

    Vue.js学习笔记 目录 Vue.js学习笔记 ES6语法 1.不一样的变量声明:const和let 2.模板字符串 3.箭头函数(Arrow Functions) 4. 函数的参数默认值 5.Sp ...

  6. Node.js入门学习笔记(一)

    先来个最常见的"Hello World!". 打开你最喜欢的编辑器(我用的是Sublime Text),创建一个helloWorld.js的文件.我们要做的就是向stdout输出& ...

  7. Node.js基础学习四之注册功能

    前言:在Node.js学习(二)和(三)中介绍了如何在Node.js 中获取登录的用户名和密码与数据库进行验证并返回数据给客户端 需求:实现注册功能 为了区分登录和注册是两个不同的请求,在端口后面加上 ...

  8. 两万字Vue.js基础学习笔记(二)

    Vue.js学习笔记(二) 4.模块化开发 ES6模块化的导入和导出 我们使用export指令导出了模块对外提供的接口,下面我们就可以通过import命令来加载对应的这个模块了 首先,我们需要在HTM ...

  9. Node.js基础学习三之登录功能

    本篇介绍Node.js访问数据库并返回数据给客户端 需求基于Node.js学习(二) 数据库请下载:user.sql 1.创建user 实体类(model-user.js) function User ...

随机推荐

  1. C#委拖小例子

    委托具有以下属性: 委托类似于 C++ 函数指针,但它们是类型安全的. 委托允许将方法作为参数进行传递. 委托可用于定义回调方法. 委托可以链接在一起:例如,可以对一个事件调用多个方法. 方法不必与委 ...

  2. Windows 2003上 SaltStack/Salt 和 psutil 可能存在的问题及解决

    今天把salt安装在windows 2003上,发现无法启动,随之而来的是一个有一个的坑,让我们一起逐个排查. 问题一(salt无法启动) salt无法启动,错误结果如图:

  3. 苹果Mac OS X显示隐藏文件的方法

    苹果Mac OS X显示隐藏文件的方法有很多种,这里介绍一种最简单的, 方法/步骤     打开“终端”,根据自己的版本选择命令   早期的OS X(10.6~10.8)系统可以使用如下两条命令来开始 ...

  4. 在Linux下安装PHP过程中,编译时出现错误的解决办法

    在Linux下安装PHP过程中,编译时出现configure: error: libjpeg.(a|so) not found 错误的解决办法 configure: error: libjpeg.(a ...

  5. 自动装箱(boxing)和自动拆箱(unboxing)

    摘自:http://www.codeceo.com/article/java-boxing-unboxing.html Java的四类八种基本数据类型 基本类型 占用空间(Byte) 表示范围 包装器 ...

  6. 简单的Web留言本

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  7. 只适用于HTML的DOM对象

    前面,已经学习了如何对树结构进行遍历,并添加.删除.修改任何XML文档中的节点.但是,还有一些对象和属性石只适用于HTML的.列如,document.body就是一个纯HTML对象.只要HTML文档中 ...

  8. 转来的。。。 关于return 的一些事情

    转来的 http://blog.csdn.net/haiwil/article/details/6691854/ 一般的来说,函数是可以返回局部变量的. 局部变量的作用域只在函数内部,在函数返回后,局 ...

  9. [SharpZipLib 未能加载文件或程序集] 解决方法

    未能加载文件或程序集"ICSharpCode.SharpZipLib, Version=0.86.0.518, Culture=neutral, PublicKeyToken=1b03e6a ...

  10. NSIS打包(一)常用概念简介

    1.NSIS简介 官网:http://sourceforge.net/projects/nsis/ 维基百科: http://zh.wikipedia.org/wiki/Nullsoft%E8%85% ...