做网站时导航条一般用什么样式,凡科手机版登录,国际时事新闻热点,制作u盘启动盘Node Node 可以理解成 ECMAScript 内置的模块组成的#xff0c;引用第三方模块#xff0c; npm系统 node package manager。 node是基于js的#xff0c;前端来写服务端通过node是最方便的#xff0c;node的性能问题 内部采用的多线程。 node中主线程还是单线程的 #…Node Node 可以理解成 ECMAScript 内置的模块组成的引用第三方模块 npm系统 node package manager。 node是基于js的前端来写服务端通过node是最方便的node的性能问题 内部采用的多线程。 node中主线程还是单线程的 文件读写内部还是基于多线程的 非阻塞 异步I/O.基于事件驱动 node中没有锁的概念 node的应用场景 处理 i/o (文件读写)密集型不适合处理cpu密集型 (压缩加密 和计算相关的) node中处理多个异步操作同一个文件件的场景 靠队列实现 可以解析js语法 服务端渲染vuereact中间层 跨域前端会用node来实现很多工具可以做后端 mongo mysql
传统的语言是什么样子的 多线程同步
默认多个线程访问同一个资源 需要加锁在高并发场景下 多线程需要不停的切换时间片 “并发” 、“并行”并行的概念 多线程 在不同的cpu下执行操作。 采用多进程的方式让系统更加稳定而且可以实现高并发
Process | Global |Commander | Debug
服务端全局变量原则是global 但是node在执行的时候为了实现模块化会在执行代码时外部包装一个函数这个函数在执行的时候会改变this指向。可以直接访问这些变量。后面的五个属性都可以在文件中直接访问但是不能通过global来获取 process platform 或如平台 windows - win32 ,mac darwincwd current working directory (你在哪执行的这个文件)env 环境变量默认我们代码在执行的时候回去读取电脑中的环境argv 执行命令时所带的参数 1.代表的是可执行node.exe 2.执行的是哪个文件 **commander ** 命令行管家第三方模块用的时候需要下载 const { program } require(commander);program.version(0.0.1);program.option(-d, --debug, output extra debugging).option(-s, --small, small pizza size).option(-p, --pizza-type type, flavour of pizza).command(run).action(() {console.log(run)});program.parse(process.argv);const options program.opts();console.log(options)__filename __dirname exports module require
Node常用API
fspathvmBuffereventhttp
node中的模块 1.内置模块 、核心模块 2.第三方模块 commander/co 3.文件模块(有相对路径 、 绝对路径)。模块遵循 commonjs 规范 es6Module规范。 es6Module “静态”导入, 在编译的时候就可以知道使用了哪些变量, 可以实现tree-shaking (都是发送http请求) commonjs 模块 “动态导入”, commonjs 模块是不支持tree-shaking (读文件 同步操作) commonjs 模块定义了自己的规范按照规范来使用就可以 如果想使用哪个模块 就require谁 (后缀可以省略 默认会查找.js 文件 没有js找.json) 如果这个模块需要被别人使用需要导出具体的内容 module.exports 更改这个变量导出的结果 在node中每个文件jsjson文件都是一个模块 一个包中含有多个模块 每个包都必须配置一个package.json 文件