这是我参与8月更文应战的第6天,活动概略查看:8月更文应战
Node.js简介
Node.js是一个根据Chrome V8引擎的、跨途径的windows键是哪个JavaSjava开发cript运转环境。
在同一个设备上怎样快速切换Node.js版别?
- n: 一个npm大局的开源包,是依托nwindows怎样激活pm来大局安缓存视频怎样转入相册装、运用的。
- fnm: 快速简略,兼容性支撑.node-version和.nvmrc文件
- nvm: 独立的软件包,Node Version Manager
Node.js的特色
异步I/O
当Node实施IO操作时,会在照应回来并康复操作,而不是阻塞线程并糟蹋CPU循环等候。
单线程
Node保持了JS在浏览器中单线程的特色。在浏览器中,有browser进程,插件进程,GPU进程,烘托进缓存视频合并程。
- 利益:不用处处介怀状态同步的缓存视频在手机哪里找问题,不会产生死锁,没有线程上下文切换带来的功用开支。
- 缺陷:无法运用多核CPU。过错会引起整个运用退出,健壮性缺乏。很多核女配每天都在抱大腿我要成仙算占用导致CPU无法持续实施。
跨途径
兼容Windows
和*nix
途径,主要得益于在操作体系与Node.js上层模块之间构建了一层途径架构。node适宜IO密集型领域。
模块化机制
何为模块化?
根据功用或业务将一个大程序拆分红相互依托的小文件,再用简略的方法拼接起来。
2.为什么需求模块windows10激活密钥化?无模块化会有哪缓存是什么意思些问题
一切script标签有必要确保次第正确,否则会依托报错。
大局变量存在命名抵触,占用内存无法被回收。
IIFE/namespace会导致代码可读性低一级许多问题。
CommonJS规缓存视频合并app下载范
Node.js支撑Cwindows10激活密钥ommonJS模块标准,选用同步机制加载模块。
加载方法
- 加载内置模块 require(‘fs’)
- 加载 相对或肯定途径的文件模块
- rejava初学quire(‘/User/…/file.js’)
- require(‘./file.js’javascript)
- 加载nwindows体系pm 包 requ缓存是什么意思ire(‘lodash’)
Npm 包查找原则
以require(‘lodash’)为例,查找的次第分别为:
-
当时目录
node_modules
-
假定没有,父级目女配每天都在抱大腿我要成仙录的
ndoe_modules
-
假定没有,沿着途径向上递归,直到根目录下
node_modules
-
找到之后会加载
package.json.main
指向的文件,假定没有packa女配美炸天ge.json
则顺次查女配每天都在抱大腿我要成仙找Index.js、index.json、indexwindows体系.nodjava怎样读e
缓存
require.cache
中缓存着加载过的模块,缓存的原因:同步加载java开发
- 文件模块查找耗不时,假定每次require都需求从头遍历查找,功用会比较差;
- 在实践开发中,模块或许软件工程专业包含副作用代码。
其软件技术专业他模块化标准
-
AMD是Requi软件库蓝奏云reJS在推行过程中标准化产出,异步加载,推重依托前置;
-
CMD是SeaJS女配没有求生欲txt在推行过程中标准化产出,异步加载,推重就近依托;
-
UMD标准兼容AMD和CommonJS方式
-
E软件库蓝奏云S Modules(ESM),言语层面的模块化标准,与环女配美炸天境无关,可凭仗babel编译
包管理机制
npm介绍
npm是Node.js 的包管理器。文件NPM目录最少有index.js和package.json,一软件商店下载个包里能够包含多个模块,一个模块里又能够依托多个软件技术包。常用命令有:
npm init
n软件商店pm config
npm run [cmd]
npm install [pkg]
npm uninstall [pkg]
npm up软件工程专业date [pkg]
npm info [pkg]
npm publish
这里看一下package.json里面有哪些东西
- name 包称号
- version 版别号
- main 进口文件
- scripts 实施脚本
- dependencies 线上依托
- devDependencies 开发依托
- repository 代码保管地址
除此之外还有许多装备等候挖掘windows键是哪个。
许多包会常常更新,那么版别号怎windows体系样去写?便当咱们开发时运用呢?
依托
最下面两个很少用
-
dependencies 业务依托,运用发布后正软件常实施所需求的java环境变量装备包
-
devDependencies 开发依托,只用于开发环境
-
peerDependencjava怎样读ies 相等依托,比方一个 webpack 插件依托特定女配没有求生欲版其他 webpack
-
bundledDependencies 打包依托(npm run pack),有NPM必要已经在 devDep 或许 dep声明过
-
optionalDependencies 可选依托
私有npm
平常的包一般都是保管在npmjs.com途径,可是有些公司内部的包,比方触及隐私的情况,所以公司一般有私有npm,能够发在私有途径上。缓存是什么意思
有时候下载某些包或许会遇到速度慢的问题,能够设置淘宝之类的私有代理,进步下载速度。
另外有时候会遇到锁包的情况,假定开发周期长版别更新或许伙伴不小心晋级java怎样读了自己的包版别,就或许带来兼容性软件工程问题。可缓存的视频怎样保存到本地以凭仗package-lock.java环境变量装备json
锁文件,防止自动晋级版别。
现在npm版别出到了7了,后边还出了yarn和pnpm等东西,pnpm处理了Windows一些扁平化带来的问题。
除此之外,课程中还讲了异步编程
、web运用开发
、开发调试
、线上布置
。我会放到下一篇持续记载笔记。