he-maoke

导航

day37node入门

一 node是什么

1.node.js是一个基于谷歌V8引擎的 javascript运行环境!

换句话来说,无V8的扶持就不会有NODE 。
2.node对浏览器v8改装,加装http模块和fs文件,

二 node模块化分类

1.自定义模块

 我们自己按照模块化的语法,开发的js文件自己定义模块,自己在需要的时候导入模块使用自己决定模块内哪些内容向外暴露

2.内置模块

node这个环境天生自带的一些模块("一个一个的js文件")你需要使用时,直接引入就好

3.第三方模块

其他人把一些常用功能直接封装好,做了一个开源,我们使用的时候,直接引入使用就好了

3.第三方模块

其他人把一些常用的功能直接封装好 做了一个开源 我们使用的时候先下载下来,直接到导入按照人家的规则使用,并且当时被命名为ServerJS,后来为了体现他的广泛性

 

本章高频面试题

1 node 有什么特点 ?
1 天生单线程支持高并发
2 非阻塞IO模型 高并发性能数一数二(异步)
3 轻量和高效
4 前后端不用换语言可以开发全栈应用
 
2 node有哪些特征与其他服务器端对比 ?
 
 
  特征:单线程、事件驱动、非阻塞I/O
  node 无法直接渲染静态页面,提供静态服务
  node 没有根目录的概念
  node 必须通过路由程序指定文件才能渲染文件
  node 比其他服务端性能更好,速度更快
 
 
 
3 使用npm有哪些好处?
通过NPM,你可以安装和管理项目的依赖,并且能够指明依赖项的具体版本号,可以通过package.json文件来管理项目信息,配置脚本

 

一 什么是node中的模块化
  1. 一个 js 文件就是一个模块
  2. 我们把一类方法放在一个 js 文件里面, 这个 js 文件就变成了一个模块
  3. 再需要哪一类方法的时候, 引入这个 js 文件就好了
  4. 再开发的过程中, 尽可能把开发方式趋近于模块的方式
  5. 把我们所有的内容都按照类别分好文件
  6. 按需引入
 
 
为了团队写作,和代码清晰管理方便,nodejs开发都要遵循模块化!
 
 
 
二 node模块化分类
 
1. 自定义模块
我们自己按照模块化的语法, 开发的 js 文件
自己定义模块, 自己再需要的时候导入模块使用
自己决定模块内哪些内容向外暴露
2. 内置模块
node 这个环境天生自带的一些模块("一个一个的 js 文件")
你需要使用的时候, 直接引入使用就好了
3. 第三方模块
其他人把一些常用的功能直接封装好
做了一个开源
我们使用的时候先下载下来, 直接导入按照人家的规则使用
 
 
 
 
三 node采用CommonJS规范
 
 
我们需要知道CommonJS是一个 民间 规范,最初提出来是在浏览器意外的地方使用,并且当时被命名为ServerJS,后来为了体现它的广泛性,修改为CommonJS,平时我们也会简称为CJS。
Node是CommonJS在服务器端一个具有代表性的实现;
 
 
在Node中每一个js文件都是一个单独的模块;
这个模块中包括CommonJS规范的核心变量:exports、module.exports、require;
我们可以使用这些变量来方便的进行模块化开发
 
 
 
 
本章高频面试题
 
commonjs规范和es6模块化规范 区别?
 
 
历史上,js一直没有模块(module)体系,无法将一个项目拆分成多个模块文件。正对这一情况,社区出现了一些统一的规范:CommonJs和AMD,前者是针对服务端的js,也就是nodejs。后者是针对浏览器的。ES6在语言标准层面上,实现了模块功能,而且实现也比较简单。完全可以取代CommonJs和AMD。达成前后端js的模块风格统一。不过目前还未完全达到这一目的。nodejs目前主流还是采用CommonJS规范。不过在v13.2版本,nodejs已经实现了ES6模块语法,还未正式替换,未来有可能vue node等都统一成es6的官方规范!

 

在真正的服务器里如何启动服务器

 

posted on 2022-07-19 21:49  hmkyj  阅读(21)  评论(0编辑  收藏  举报