nodejs - 前端小记
node.js是什么?
node.js,是js的一个解释器。
JS是脚本语言,脚本语言都需要一个解析器才能运行。对于写在HTML页面里的JS,浏览器充当了解析器的角色。而对于需要独立运行的JS,NodeJS就是一个解析器。
每一种解析器都是一个运行环境,不但允许JS定义各种数据结构,进行各种计算,还允许JS使用运行环境提供的内置对象和方法做一些事情。例如运行在浏览器中的JS的用途是操作DOM,浏览器就提供了document之类的内置对象。而运行在NodeJS中的JS的用途是操作磁盘文件或搭建HTTP服务器,NodeJS就相应提供了fs、http等内置对象。
所以node.js可以实现,服务器功能。
node有什么用处?
包(package):基本就是一个项目(由多个模块文件构成的项目)
每个包(也就是多个模块文件,构成的一个大模块),有一个入口文件,在require之后调入执行。默认是index.js文件
package.json:一个配置文件,标明了这个包的各项信息。例如:入口文件等
重要字段:devDependencies依赖文件,因为用户下载包时,npm会自动下载这个字段的包,帮助用户处理依赖。
而且npm install会自动为项目下载dev中的依赖。所以记得,--save-dev
这是一个标准的package.json文件:
{ "name": "Hello World",//包名 "version": "0.0.1", "author": "张三", "main": "main.js",//定义入口文件 "description": "第一个node.js程序", "keywords":["node.js","javascript"], "repository": { "type": "git", "url": "https://path/to/url" }, "license":"MIT", "engines": {"node": "0.10.x"}, "bugs":{"url":"http://path/to/bug","email":"bug@example.com"}, "contributors":[{"name":"李四","email":"lisi@example.com"}], "scripts": { "start": "node index.js" }, "dependencies": { "express": "latest", "mongoose": "~3.8.3", "handlebars-runtime": "~1.0.12", "express3-handlebars": "~0.5.0", "MD5": "~1.2.0" }, "devDependencies": { //对第三方包的依赖,用户在下载这个包的时候,npm会自动下载这些包 "bower": "~1.2.8", "grunt": "~0.4.1", "grunt-contrib-concat": "~0.3.0", "grunt-contrib-jshint": "~0.7.2", "grunt-contrib-uglify": "~0.2.7", "grunt-contrib-clean": "~0.5.0", "browserify": "2.36.1", "grunt-browserify": "~1.3.0", }}
node中模块的管理:npm
npm:nodejs,包管理工具。方便管理我们对第三方库的下载使用。
node_modules目录是存放,第三方包的位置。
下载包:全局下载和本地下载。全局下载,包会存放在全局位置(npm root -g),所有项目都可以用。本地下载包会存在当前项目的,node_modules目录中
小结:npm init: 为项目创建package.json文件 npm install xxx --save-dev:注意养成习惯加 --save-dev!!! npm install -g gulp npm install argv@0.0.1 下载特定版本号 npm install :在package.json中的devDependencies字段中写明依赖的第三方包,然后就可以批量下载第三方包了