Node.js官方版是一款非常好用的编程软件,这款插件基于Chrome JavaScript运行时建立的一个平台,N采用事件驱动和非阻塞I/O模型,使其变得轻量和高效,非常适合构建运行在分布式设备的数据密集型的实时应用,有需要的朋友可以在本站下载使用。
Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行时。 Node.js 使用高效、轻量级的事件驱动、非阻塞 I/O 模型。Node.js 的生态系统是目前最大的开源包管理系统。
Node.js 是一套用来编写高性能网络服务器的 JavaScript 工具包,一系列的变化由此开始。比较独特的是,Node.js 会假设你是在 POSIX 环境下运行它 Linux 或 Mac OS X。如果你是在 Windows 下,那就需要安装 MinGW 以获得一个仿 POSIX 的环境。在 Node 中,Http 是首要的。Node 为创建 http 服务器作了优化,所以你在网上看到的大部分示例和库都是集中在 web 上(http 框架、模板库等)。
Node.js模块和包
1. 模块
Node.js官方提供了很多模块,这些模块分别实现了一种功能,如操作文件的模块fs,构建http服务的模块http等,每个模块都是一个JavaScript文件,当然也可以自己编写模块。
2. 包
包可以将多个具有依赖关系的模块组织在一起,封装多个模块,以方便管理。Node.js采用了CommonJS规范,根据CommonJS规范规定,一个JavaScript文件就是一个模块,而包是一个文件夹,包内必须包含一个json文件,命名为package.json。一般情况下,包内的bin文件夹存放二进制文件,包内的lib文件夹存放JavaScript文件,包内的doc文件夹存放文档,包内的test文件夹存放单元测试。package.json文件中需要包含的字段及包的使用,后面的实验再做详细介绍。
3. npm包管理工具
npm是Node.js的包管理工具,npm定义了包依赖关系标准,我们使用npm主要用来下载第三方包和管理本地下载的第三方包。
1、在本站下载此软件后解压打开下图所示图标
2、进入安装界面,点击下一步
355px; width: 450px;" />
3、阅读许可协议选择同意后点击下一步
350px; width: 450px;" />
4、选择文件夹安装位置后点击下一步
349px; width: 450px;" />
5、根据提示进行安装,等待安装完成即可
Node.js v10.12.0 已发布,更新内容如下:
断言
现在,通过在检查彼此比较的值时对对象属性进行排序,可以稍微改善diff输出。 #22788
CLI
选项解析器现在归 _ 到 - 所有多字的命令行标志,例如 --no_warnings 具有相同的效果 --no-warnings。 #23020
添加了node 二进制文件的bash完成 。要生成bash完成脚本,请运行 node --completion-bash。输出可以保存到文件中,可以获取该文件以启用完成。 #20713
加密
添加了对PEM级加密的支持。 #23151
添加了API非对称密钥对生成。新的方法 crypto.generateKeyPair 和 crypto.generateKeyPairSync 可以用来生成公钥和私钥对。API支持RSA,DSA和EC以及各种密钥编码(包括PEM和DER)。 #22660
FS
recursive 为fs.mkdir 和 添加了一个 选项 fs.mkdirSync。如果此选项设置为true,则将自动创建不存在的父文件夹。 #21875
http2
每当 收到非ack时,就会发出 一个 'ping' 事件 。 #23009Http2SessionPING
添加了对ORIGIN 框架的支持 。 #22956
将nghttp2更新为1.34.0。这增加了RFC 8441扩展连接协议支持,允许通过HTTP / 2使用WebSockets。 #23284
模
补充说 module.createRequireFromPath(filename)。此新方法可用于创建自定义require函数,该函数将解析相对于文件名路径的模块。 #19360
处理
添加了 多次尝试解析'multipleResolves' 时发出的 进程事件 Promise,例如,如果 在 执行程序中调用resolve 和 reject函数,则会发生这些事件 Promise。 #22218
网址
添加 url.fileURLToPath(url) 和 url.pathToFileURL(path)。这些方法可用于在文件:URL和绝对路径之间正确转换。 #22506
有帮助
添加了 sorted 选项 util.inspect()。如果设置为 true,则对象的所有属性以及Set和Map条目将在返回的字符串中排序。如果设置为函数,则将其用作比较函数。 #22788
该 util.instpect.custom 符号现在在全局符号注册表中定义为 Symbol.for('nodejs.util.inspect.custom')。 #20857
添加了对BigInt 数字的 支持 util.format()。 #22097
V8 API
许多V8 C ++ API已被标记为已弃用,因为它们已在上游存储库中删除。必要时添加替换API。 #23159
视窗
Windows msi安装程序现在提供了一个选项,可以自动安装构建本机模块所需的工具。 #22645
工作人员
已经实现了使用DevTools协议的Worker的调试支持。 #21364
inspector 现在,在Workers中启用了公共 模块。 #22769
添加了新的协作者:
digitalinfinity - Hitesh Kanwathirtha