# node基础
Node.js 是一个基于 Chrome V8
引擎的 JavaScript
运行时环境,允许你在服务器端运行 JavaScript
。它提供了一组丰富的内置库和模块,使得开发网络应用程序变得更加容易。
- 1、安装 Node.js:Node.js 的官方网站(https://nodejs.org)下载并安装适合你操作系统的 Node.js 版本。
- 2、npm:Node.js 自带了一个包管理器叫做
npm(Node Package Manager)
。它允许你安装、管理和共享 JavaScript 模块。 - 3、创建 Node.js 应用:你可以在命令行中使用 node 命令执行 JavaScript 文件。例如,node app.js 会执行名为 app.js 的 JavaScript 文件。
- 4、模块系统:Node.js 使用模块来组织和重用代码。你可以使用 require 函数来引入其他模块,并使用
module.exports
导出模块中的变量、函数或对象。 - 5、异步编程:Node.js 使用异步非阻塞 I/O 模型,这意味着它可以同时处理多个请求而不会阻塞应用程序的执行。你可以使用回调函数、Promise 或 async/await 等机制来处理异步操作。
- 6、内置模块:Node.js 提供了一些内置的核心模块,例如 fs(文件系统)、http(HTTP 服务器与客户端)、path(路径操作)等,这些模块提供了丰富的功能来简化开发过程。
- 7、第三方模块:Node.js 社区有大量的第三方模块可供使用。你可以使用 npm 来安装这些模块,并在你的应用程序中引入和使用它们。
- 8、事件驱动编程:Node.js 基于事件驱动的架构,通过发布和订阅事件来处理异步操作。你可以使用内置的 events 模块来创建和处理事件。
# global
在 Node.js
中,有一些全局对象和变量可供你在任何地方使用,这些被称为 Node.js
的全局对象。
以下是一些常见的 Node.js 全局对象和变量:
- 1、
global
对象:在Node.js
中,global
是一个全局对象,它类似于浏览器中的 window 对象。你可以在任何地方访问global
对象,并且它包含了一些常用的全局函数和变量。 - 2、
process
对象:process
是一个全局对象,它提供了与当前Node.js
进程相关的信息和控制。你可以使用 process 对象来访问命令行参数、环境变量、标准输入/输出流等。 - 3、
console
对象:console
是一个全局对象,用于在控制台输出信息。你可以使用 console.log()、console.error() 等方法来打印日志、错误信息等。 - 4、
require()
函数:require()
是一个全局函数,用于引入其他模块。通过require()
函数,你可以加载其他 JavaScript 文件、第三方模块等。 - 5、
__dirname
和__filename
变量:__dirname
表示当前模块所在的目录的路径,__filename
表示当前模块的文件路径。 - 6、
setTimeout()
和setInterval()
函数:这两个函数用于在一定时间后执行函数或定期执行函数。
# process.argv
console.log(process.argv); // 默认前两个参数没有实际意义。
process.argv.slice(2) // 搜集用户传递的参数。
// 示例: node .\index..js --port 3000 --version 0.1
console.log(process.argv.slice(2)) => [ '--port', '3000', '--version', '0.1' ]
// 转成对象 => {port:3000,version:0.1}
process.argv.slice(2).reduce((t, v, i, arr) => {
if (v.startsWith("--")) {
t[v.slice(2)] = arr[i + 1];
}
return t;
}, {})
# process.env
process.env
属性返回包含用户环境的对象。
# process.cwd()
process.cwd()
方法返回 Node.js
进程的当前工作目录。
console.log(`Current directory: ${process.cwd()}`);
// c:\Users\jc\Desktop\test
Npm简介 →