为什么要学习Node
- 因为前端不仅需要学习客户端的所有布局和操作,还必须要服务端紧密配合才能完成一个完整的操作体验,简单的来说,学习Node可以让我们学会如何搭建服务端和构建与客户端的交互
- 学习Node就是让我们打开服务端这个黑盒子,让我们明白服务端这个黑盒子里面是怎么构建的,是怎么运行的。
- 只有懂了服务端才能更好的配合服务端开发人员进行协同开发,也为了让我们更深入的了解页面的交互。
Node 是什么
- Node.js 不是一门语言
- Node.js 不是库也不是框架
- Node.js 是一个JavaScript 运行时环境
- 简单的来讲就是 Node.js 可以解析和执行 JavaScript 代码
- 以前只有浏览器可以解析和执行 JavaScript 代码
- 也就是说现在的 JavaScript 可以完全脱离浏览器来执行,一切都归功于 Node.js
浏览器中的 JavaScript
- EcmaScript
- 基本的语法
- if
- var
- function
- Object
- Array
- BOM (Browser Object Model)即浏览器对象模型
- BOM提供了独立于内容 而与浏览器窗口进行交互的对象;
- 由于BOM主要用于管理窗口与窗口之间的通讯,因此其核心对象是 window;
- window对象是js中的顶级对象,所有定义在全局作用域中的变量、函数都会变成window对象的属性和方法,在调用的时候可以省略window。
- 例:打开窗口 window.open(url,target,param);
- url 要打开的地址
- BOM由一系列相关的对象构成,并且每个对象都提供了很多方法与属性;
- .offset,scroll,client,事件参数e,target 和currentTarget
- DOM (Document Object Model) 文档对象模型
- 通过 JavaScript,您可以重构整个 HTML 文档。您可以添加、移除、改变或重排页面上的项目。
- document.getElementById() 和 document.getElementsByTagName() 方法
Node.js 中的JavaScript
- 没有BOM, DOM
- EcmaScript
- 在 Node 这个 JavaScript 执行环境中为其提供了一些服务器级别的操作 API
- 文件读写 fs
- 网络服务的构建 router
- http 服务器 http
- url 地址操作 url
npm (Node package manager)
- npm 是全世界最大的开源库生态系统
- 绝大多数 JavaScript 相关的包都存放在 npm 上,这样做的目的是为了让开发人员更方便的去下载使用
node install jquery
Node.js 能做什么
- 让我们使用 JavaScript 的代码构造一个服务器和交互
hello world
var http = require('http')
var server = http.createServer()
server.on('request', function () {
console.log('hello world!')
})
server.listen(3000, function () {
console.log('running...')
})
复制代码
在 js 文件右键打开cmd命令窗口 然后输入 node hello.js 按回车 cmd命令窗口就会输出hello world 了