为何要学习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 了前端