Node简介

Node

基本介绍

  • 客户端的JavaScript是一个脚本语言,运行在浏览器(浏览器的js解析内核 v8 ),实现用户的交互。

  • 浏览器中的JavaScript不能访问数据库,不能对文件进行操作,不能对OS进行操作

  • 在开发人员能力相同的情况下编程语言的能力取决于平台

    what is node?

    • Node.js是一个基于Chrome V8引擎的JavaScript运行环境

    • Node.js使用了事件驱动、非阻塞I/O模型

      事件驱动:发布订阅(发布者 订阅者 )事件驱动(on emit)

      非阻塞:异步,执行某一任务的时候也可以执行其他的任务

      I/O:输入输出(对数据库的操作 、对文件的操作)

    • 非阻塞I/O模型: 当我们使用Node.js来实现数据库操作、文件系统等操作时,要进行的异步操作,异步操作的核心传统实现方式就是回调函数(callback)

    • Nodejs的包管理器npm ,是全球最大的开源库生态系统

      • 建议:切换国内淘宝镜像源(nrm)
    • 官网: http://nodejs.cn/

    • npm 插件官网:https://www.npmjs.com/

    node版本常识

    window下常用的命令行操作

    • mkdir 创建目录
    • cls 清空屏幕
    • rmdir 删除一个目录
    • del 删除某个文件
    • dir 列出当前目录列表

    git/powershell用的Linux命令

    • mkdir 创建目录
    • ls 查看当前目录列表
    • clear 清空(和window下不同,window下全部清空,而Linux下只是将全部操作过的命令上移)
    • rm -rf 删除某个文件或者目录

node实时监听

  • nodemon (建议使用)(npm install nodemon -g)
  • supervisor

COMMONJS规范

前端规范:AMD CMD commonjs规范

nodejs就是commonjs规范的体现

定义module

每个文件就是一个模块,有自己的作用域。在一个文件里面定义的变量、函数、类,都是私有的,对其他文件不可见。

暴露接口

它的exports属性(即module.exports)是对外的接口。加载某个模块,其实是加载该模块的module.exports属性。

引用模块

require方法用于加载模块。

模块的分类

  • 自定义模块

  • 第三方模块(需下载才可以使用)(npm install request -S)

  • 内置模块(首先要用require引入对应模块,再参照API使用)

    • http

      http.request 是用来做数据请求

      http.creatServer 创建服务器

      http.get

    • querystring

      qs.parse 将字符串转为对象

      var str = 'http://www.baidu.com/home?a=1&b=2#c=3'// { 'http://www.baidu.com/home?a': '1', b: '2#c=3' }
      

      qs.stringify j将对象转为字符串

      const obj = { 'http://www.baidu.com/home?a': '1', b: '2#c=3' };console.log( typeof qs.stringify( obj ) )
      

      qs.escape 将中文编码

      const cityStr = 'city=北京'console.log( qs.escape( cityStr ) ) // city%3D%E5%8C%97%E4%BA%AC
      

      qs.unescape 将中文解码

    • url 网址解析( 解析URL相关网址信息)

      url.parse(urlString[, parseQueryString[, slashesDenoteHost]])

      url.format(urlObject) url.parse的逆运算

上一篇:Python pyautogui


下一篇:linux 在 /proc 里实现文件