node.js
- 运行在服务端的js
- 基于谷歌v8引擎-解析js
- 事件驱动 I/O 服务
- 单线程
node 学习内容
-
I/O 服务
I ==input输入/请求 o==output
输出/响应请求:
请求地址:
http://www.baidu.com:80/a.php?page=1&limit=20#zz
http protocol 协议 www.baidu.com hostname 主机名 :80 Port 端口 www.baidu.com:80 Host 主机 /a.php Pathname 路径名 ?page=1&limit=20 Search 搜索/请求参数 page=1&limit=20 query 查询语句 #zz hash 哈希 请求方式:
常用:get、post
请求参数:
get:page=1&limit=20 (query)
post: 请求体
响应:
响应数据(文件资源:html、css、js 、img、video、audio)(数据:XML、json、jsonp)
-
文件操作 Fs
-
数据库操作 mongod
前端模块化
运行环境 | 规范 | 实现规范 |
---|---|---|
服务端(node) | CommonJs | node |
客户端(浏览器) | AMD | require.js |
客户端(浏览器) | CMD | Sea.js(玉伯) |
客户端(浏览器) | ES6(javascript规范) | Es6 模块化 |
commonJs && ES6 模块化
模块化写法 | commonJs(node) | ECMAscript2015(ES6) |
---|---|---|
1、实现模块 | 创建js文件->(变量/方法/对象/数组。。。) | 创建js文件->(变量/方法/对象/数组。。。) |
2、导出模块 | module.exports=模块名 | export / export default 模块名 |
3、载入模块 | var 变量=require("") 内置模块-> 模块名(http服务、fs文件、url地址、queryString请求参数…), 第三方 -> 模块名 --, 文件模块->文件路径 | import 变量名 from “文件路径” |
4、使用模块 | 使用变量 | 使用变量 |