Node.js基础总结与回顾

概述

nodejs中文网中列出三条:

  1.Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。
  2.Node.js 使用了一个事件驱动、非阻塞式 I/O 的模型,使其轻量又高效。
  3.Node.js 的包管理器 npm,是全球最大的开源库生态系统。

它是一个运行时,既不是编程语言,也不是框架,是一个基于v8引擎的js运行环境,在nodejs中没有BOM与DOM,那是浏览器运行环境中的,nodejs中只包含JavaScript中的Ecmascript(变量、数组、方法、对象、函数等),和自己的一些模块,这些模块使nodejs可以做服务器编程,如http模块,fs文件模块。

nodejs是单线程,但是它的非阻塞式编程,使得它非常高效
npm是node的包管理工具,和maven一样,绝大多数的JavaScript相关的包都存放在npm上,这样做的目的是让开发人员更爱方便的去下载使用。

  • Node.js的安装以及配置过程比较简单,此处就不在赘述。

Node进行简单文件读取

浏览器中的JavaScript没有文件操作的能力;但是Nodejs的JavaScrip具有文件操作的能力。

//利用fs加载核心模块
var fs= require ('fs')
  //读文件,第一个参数要读取的文件路径,第二个参数为读取返回的错误信息,是一个回调函数
  fs.readFile('./data/hello.txt',function(err,data){
    console.log(data.toString());
  })


var  fs= require('fs')
//第一个参数时:文件路径
//第二个参数:文件内容
//第三个参数:回调函数
fs.writeFile('./data/你好.md','大家好',function(error){
  if(error){
    console.log('写入文件失败');
  }else {
    console.log(data.toString());
  }
})

简单服务器

//加载http核心模块
var  http =require('http')
//2.使用Http,createServer()方法创建一个web服务器
var server= http.createServer()
//3.
//request  请求事件处理函数,需要接受两个参数:
//request:请求对象 ,请求对象可以用来获取客户端的一些请求信息,列如请求路径。
//response:响应对象,可以用来给客户端发送响应信息
server.on('request', function(request,response){
  console.log('收到和客户端请求了,请求的路径是:' + request.url);
  //response:对象有一个方法:writer可以用来给客户端发送响应数据,write可以使用多次,但是最后一定需要end来结束响应,否则客户端会一致单个爱
  response.write('hello')
  response.write('nodejs')

  response.end()
})

//4.绑定端口号,启动服务器
server.listen(3000,function(){
  console.log('服务器启动成功,可以通过http://127.0.0.1:3000/来进行访问');
})

Node中的核心模块

Node为JavaScript提供了很多服务器级别的API,这些API大都被封装到了一个具名的核心模块中了,列如文件操作的 fs核心模块,http服务构建的http模块,os操作系统的信息模块。
进行对应的操作我们必须引入对应的模块:

var fs=require('fs')
var os=require('os')

  • require是一个方法,他的作用是用来加载的
  • 在Node中,模块有三种:具名的核心模块,用户自己定义的文件模块;相对路径必须添加./
  • 在Node中,没有全局作用域,自由模块作用域【内部访问不到外部,外部也访问不到内部】
  • require的方法有两个作用:
    • 1.加载文件模块并执行里面的代码
    • 2.拿到被加载文件模块导出的接口对象

你可能感兴趣的:(前端学习,Node.js)