Skip to content

Latest commit

 

History

History
65 lines (55 loc) · 2.03 KB

2工程构建.md

File metadata and controls

65 lines (55 loc) · 2.03 KB

1交互式解释器

  • 读取 - 读取用户输入,解析输入了Javascript 数据结构并存储在内存中。
  • 执行 - 执行输入的数据结构
  • 打印 - 输出结果
  • 循环 - 循环操作以上步骤直到用户两次按下 ctrl-c 按钮退出。

nodeJS提供了交互式解释器的功能,可以进行基本的运算和调试。

2工程构建

CommonJS是nodejs的标准。nodejs是commonjs的实现。

包目录构成

  • package.json 包描述文件
  • bin 用于存放二进制文件的目录
  • lib 用于存放JavaScript代码的目录
  • doc 用于存放文档的目录

模块说明

  • CommonJS定义,分为系统模块和自定义模块。
  • 系统模块包括http模块、URL模块、FS模块
  • 用户自定义模块把公共的功能抽离成一个单独的js文件。需要通过exports输出,require引入。
exports.outapi=innerfunction;
const selfmodule = require(".../module.js")
selfmodule.outapi();
module.exports obj;
const seflmodule = reuqire(".../module.js")

node_moudles文件夹说明

  • 工程构建过程中,会自动扫描node_modules文件夹下的子文件夹。
  • 如果子文件夹下有index.js,nodejs会自动识别,并做为模块入口。
  • 如果没有index.js,则nodejs无法识别模块入口。
  • 如果有package.json,nodejs会读取配置文件,并识别配置文件中的入口。包描述文件

package.json说明

  • 使用nmp init,初始化一个nodejs模块,生成一个package.json包描述文件。
  • 使用npm install,会自动下载nodejs模块对应的所有依赖。
{
  "name": "first",//模块名字
  "version": "1.0.0",//模块版本号
   "main": "app.js",//模块入口
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [//模块检索关键词
    "hello"
  ],
  "author": "ykl",//模块作者
  "license": "ISC"//模块开原证书
  "dependencies":[
      //^版本号第一位不变,~前两位不变,*版本号都不变
  ]
  "devDependencies":{
      //dev工具依赖的包。
  }
}