NODEJS

随声附和 提交于 2019-12-09 21:18:40

一、NODEJS概述

  NODEJS基于谷歌的V8引擎(JS解释器),运行在服务器端的语言,基于JS。

  http://nodejs.org  英文官网

  http://nodejs.cn 中文

  1、对比JS和NODEJS

  (1)JS运行在浏览器端,存在兼容性的问题;NODEJS运行在服务器端,不存在兼容性问题。

  (2)两者都有内置(ES)对象、自定义对象、宿主对象(根据执行环境的不同)

  (3)JS用于网页中的交互效果,NODEJS用于服务器端操作,例如:创建web服务器、操作数据库...

 2、NODEJS的执行方式

  脚本模式   node C:/xampp/..../01.js

  交互模式

    node  回车  进入交互模式

    两次ctrl+c或者输入 .exit  退出交互模式

 3、 NODEJS特点及应用

    支持数万个并发连接

    应用于基础社交网络的大规模web应用

4.全局对象

  NODEJS: global

  在交互模式下,声明的变量和创建的函数都是全局对象下的,可以使用global来访问,例如 var a=1;  global.a

  在脚本模式下,文件中声明的变量和创建的函数不是全局对象下的,不能使用global来访问

  JS: window

  在浏览器下,文件中声明的变量和创建的函数是全局对象下的,可以使用window来访问,例如 var a=1; window.a

 (1)console对象

   global.console.log() 打印日志

   global.console.info()  打印消息

   global.console.warn()  打印警告

   global.console.error()  打印错误

   global.console.time('自定义字符串');   开始计时

   global.console.timeEnd('自定义字符串');  结束计时

   自定义字符串前后要保持一致

  练习:使用计时查看for、while、do-while循环10000次的耗时

 (2)process

   当前计算机的进程

   process.arch  查看当前CPU的架构  X64

   process.platform  查看当前的操作系统   win32

   process.env  查看当前的环境变量有哪些

   process.version  查看当前nodejs的版本号

   process.pid  查看当前的进行编号

   process.kill(编号)  杀死某个编号的进程

 (3)Buffer

   缓冲区:在内存中存储数据的区域,存储网络传输时的资源。

   创建buffer

     var buf=Buffer.alloc(5, 'abcde');

   将buffer数据转为普通字符串

     buf.toString()

   练习:创建两个buffer区域,分别存储两个数字,计算两个数字相加。

5.模块系统

  模块是一个预定义好的功能体,在nodejs下,每一个文件都是一个模块。

  在NODEJS下分为自定义模块、核心模块(官方提供)、第三方模块

  在NODEJS下,一个文件就是一个模块,文件中的代码默认是被一个构造函数所包含。

  以下红色的代码都是nodejs自动为每个文件添加的。

(function(exports,require,module,__filename,__dirname){

  程序编写的代码

})

__filename  当前文件的完整路径和文件名称

__dirname  当前文件的完整路径

require  是一个函数,用于引入模块;  require('./07_2.js')

module  指代当前的模块

  module.exports  当前模块导出的对象(公开的内容),可以供其它的模块使用的属性和方法。

exports  等价于module.exports

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!