首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【学习笔记】黑马程序员Node.js全套入门教程 | 基础篇

JavaScript能否做后端开发JS可以浏览器运行,我们需要通过Node.js让JS代码服务端运行Node.js 简介什么是Node.jsNode.js 是一个基于Chrome V8引擎JavaScript...Node.js 是JavaScript后端运行环境。Node.js 无法调用DOMBOM等浏览器内置API。...为什么需要包由于Node.js 内置模块提供了一些底层API,导致基于内置模块进行项目开发时,效率很低。包是基于内置模块封装出来,提供了更高级、更方便API,极大提高了开发效率。...运行npm install命令安装包时候,npm包管理工具会自动把包名称版本号,记录到package.json 。...,作为包根目录在itheima-tools文件,新建如下三个文件:package.json(包管理配置文件)index.js(包入口文件)README.md(包说明文档)// packge.json

2.1K01

JavaScript 编程精解 中文第三版 二十、Node.js

但在 Node ,该方法不会将文本显示浏览器 JavaScript 控制台中,而显示标准输出流。从命令行运行node时,这意味着你会在终端中看到记录。...如果你一个包含package.json文件目录执行npm publish,它将一个包发布到注册处,带有 JSON 文件列出名称版本。...本书不会深入探讨 NPM 使用细节。 请参阅npmjs.org来获取更多文档搜索方法。 文件系统模块 Node中最常用内建模块就是fs(表示 filesystem,文件系统)模块。...你需要向该函数传递状态码(本例 200 表示成功)一个对象,该对象包含协议头信息。该示例设置了"Content-Type"头,通知客户端我们将发送一个 HTML 文档。...习题 搜索工具 Unix 系统上,有一个名为grep命令行工具,可以用来文件快速搜索正则表达式。 编写一个可以从命令行运行 Node 脚本,其行为类似grep。

2.1K40
您找到你想要的搜索结果了吗?
是的
没有找到

一篇文章弄明白Node.js与二进制数据流

JavaScript 可以使用 charCodeAt 方法获取字符对应 ASCII: ?...更多关于编码细节不再赘述,也不是本文重点,如果想了解更多可自行搜索。 乱码原因 我们经常会出现一些乱码情况,就是因为字符串与 Buffer 转化过程,使用了不同编码导致。...-- 摘自维基百科 我们经常在 Linux 命令行使用管道,将一个命令结果传输给另一个命令,例如,用来搜索文件。...ls | grep code 这里使用 ls 列出当前目录文件,然后交由 grep 查找包含 code 关键词文件。...前面说过,Node.js 数据写入都是内部实现,下面通过读取文件 fs 创建可读流来举例: const fs = require('fs') // 创建 data.json 文件可读流 const

3.2K30

带你重新认识Node

I / O流等常见需求没有标准API 没有标准接口 JavaScript,几乎没有定义过如Web服务器或者数据库之类标准统一接口 缺乏包管理系统 导致JavaScript应用基本没有自动加载安装以来能力...,以使二次加载更快 文件模块给Node指明了确切文件位置,所以查找过程可以节约大量时间,其加载速度慢于核心模块 自定义模块 是一种特殊文件模块,是一个文件或者包形式 这类模块查找是最费时...require分析标识符会出现不包含文件扩展名情况 会按.js、.json、.node次序补足扩展名,一次尝试 过程,需调用fs模块同步阻塞地判断文件是否存在,Node单线程因此会引起性能问题...通过fs模块同步读取文件后编译执行 node文件 这是用C/C++编写扩展文件,通过dlopen方法加在最后编译生成文件 json文件 通过fs模块同步读取文件后,JSON.parse解析返回结果...包实际上是一个存档文件,即一个目录直接打包为一个.zip/tar.gz格式文件,安装后解压还原为目录 符合CommonJS规范包目录应该包含如下文件 package.json 包描述文件 bin

65820

Node.js学习笔记(二)——Node.js模块化、文件读写、环境变量

CommonJS API编写应用程序,然后这些应用可以运行在不同JavaScript解释器不同主机环境。...http.createServer(...); Node.js自带了一个叫做"http"模块,我们我们代码请求它并把返回赋给一个本地变量。...Node 导入文件系统模块(fs)语法如下所示: var fs = require("fs") 2.1、异步同步 Node.js 文件系统(fs 模块)模块方法均有异步同步版本,例如读取文件内容函数有异步...通常用非零表示错误。 %HomeDrive%: 系统 返回连接到用户主目录本地工作站驱动器号。基于主目录设置。用户主目录是“本地用户组”中指定。...{当前用户根目录 – C:} %HomePath%: 系统 返回用户主目录完整路径。基于主目录设置。用户主目录是“本地用户组”中指定

6K30

深入了解rollup(四)插件开发示例

options.include options.exclude 分别指定了需要包含排除文件。然后,返回一个对象,其中包含了插件名称一个 transform 方法。...输出文件名为当前模块文件名加上 .txt 扩展名。最后,这个插件可以通过 Rollup 配置文件引入并添加到插件列表来使用。...options.include options.exclude 分别指定了需要包含排除文件。然后,返回一个对象,其中包含了插件名称一个 transform 对象。... handler 函数,首先使用过滤器检查当前模块是否需要处理,并且判断当前模块是否是 JSON 文件。如果不需要处理或者不是 JSON 文件,则返回 null。...最后,这个插件可以通过 Rollup 配置文件引入并添加到插件列表来使用。它会在构建过程中将 JSON 文件转换为 ES 模块格式代码。页面使用import pkg from "..

33530

如何用Express实现一个ADUS项目

利用Express实现ADUS项目使用Express可以快速地实现一个包含增删改查(CRUD)功能Web项目,下面是一个基于Express实现简单ADUS(添加、显示、更新、删除、搜索)项目模块化思想模块如何划分...:模块职责要单一使用Express实现一个CRUD项目时,通常可以将不同功能模块划分为不同路由控制器,以实现代码可读性可维护性。...实现模块划分时,需要注意以下几点:尽量保持模块功能单一。一个模块应该只包含一个相关功能,以便于代码维护管理。将路由控制器分离。...javascript模块化:Node CommonJS浏览器:AMDrequire.jsCMD sea.jses6增加了官方支持起步初始化模板处理路由设计请求方法请求路径 get参数.../** * student.js * 数据操作文件模块 * 职责:操作文件数据,只处理数据,不关心业务 */var fs = require('fs'); /** * 获取所有学生列表 * return

15200

Node.js ES模块现状

C C++ #include 指令就用于这个目的,而 Java Python 有 import 关键字。...重要是,现在可以用 package.json 文件,它包含了诸如包唯一名称之类信息。现在使用 JSON 格式扩展了一个名为 type 新属性。...可以选择将其更改为 commonjs 或 module 以确定默认情况下应加载包中所包含 JavaScript 文件模式。...fs crypto 等内置模块可以通过两种方式加载。 Node.js 差异 除了异步加载依赖项问题之外,Node.js 旧模块新模块之间还存在进一步差异。...简而言之,ES 模块不会导出导入,只是对引用。导入此类引用模块可以访问该,但无法修改它。已导出引用模块可以为引用分配新,该将由从该点导入引用其他模块使用。

1.4K40

JavaScript 权威指南第七版(GPT 重译)(七)

对于没有明确*.mjs或.cjs扩展名文件,Node 会在与文件相同目录查找名为package.json文件,然后每个包含目录查找。...如果你想要使用最底层fs.read()fs.write()函数,允许你文件跳转,不同时间读取写入文件位,你需要打开文件。...打包工具通常具有基于插件架构,并支持插件,允许导入捆绑实际上不是 JavaScript 代码文件“模块”。假设你程序包含一个大型 JSON 兼容数据结构。...当你 JSX 表达式中使用 JavaScript 表达式时,你不仅限于前面示例字符串布尔等简单。任何 JavaScript 都是允许。...JavaScript Set 类是一个元素集合,就像数组一样,你不能单独使用Set作为一种类型,而是必须在尖括号内包含一个类型参数来指定集合包含类型。

39610

Node.js快速入门

换言之,一个 Node.js 文件就是一个模块,这个文件可能是JavaScript代码、JSON或者编译过C/C++扩展。...11、函数 JavaScript,一个函数可以作为另一个函数接收一个参数。我们可以先定义一个函数,然后传递,也可以传递参数地方直接定义函数。... Node.js 我们可以直接访问到 global 属性,而不需要在应用包含它。 global 最根本作用是作为全局变量宿主。...它将输出文件所在位置绝对路径,且命令行参数所指定文件名不一定相同。 如果在模块,返回是模块文件路径。...# cd fs 15.1 异步同步 Node.js 文件系统(fs 模块)模块方法均有异步同步版本,例如读取文件内容函数有异步 fs.readFile() 同步 fs.readFileSync

11.1K10

这里有一份Node.js入门指南和实践,请注意查收

(本文先不说),Node 对 HTTP 协议及相关 API 封装比较底层,其仅能处理流消息,对于消息处理,也解析成报文头报文体,但是不解析实际报文头报文体内容。... Node.js 文件模块是一一对应关系,可以理解为一个文件就是一个模块。...另外,不区分大小写文件系统或系统,不同文件名可能解析到相同文件,但缓存仍会将它们视为不同模块,会多次加载文件。如:require('./index') require('....文件模块 当加载文件模块时,如果按文件名查找未找到。那么 Node.js 会尝试添加.js .json 扩展名,并再次尝试查找。如果仍未找到,那么会添加.node 扩展名再次尝试查找。...对于.js 文件,会将其解析为 JavaScript 文本文件;而.json 会解析为 JOSN 文件文件;.node 会尝试解析为编译后插件文件,并由 dlopen 进行加载。

3.5K30

前端工程化WMS 6.0实践

基于以上问题,搜索相关资料并对比多个工具实现方法后,决定使用『node cli』作为工具实现方案,通过AST来精准识别有效中文i18n方法调用。...跨平台使用 IDE(WebStorm、VS Code)无关 整体实现思路分为以下几步: 1.通过设定好搜索规则,找到符合要求vuejs文件,支持忽略指定目录或文件 2.读取文件内容,将js文件转换为...fs fs包含node提供一系列文档操作api,本次用到fs同步文件读取方法 readFileSync。...3.将单个文件校验结果合并后写入到 checkResult.json 文件 4.3.2 核心代码 1.识别 vue js 文件进行不同逻辑处理 // parse.tsimport...使用工具时,通过简单配置即可检索指定项目指定路径下所有的 vue js 文件,并且支持按文件路径来记录校验结果并输出到 json 文件

95810

Node理论笔记:模块实现

核心模块编译进了二进制执行文件node进程启动时,部分核心模块就被直接加载在内存,所以这部分核心模块引入时,文件定位编译执行这2个步骤可以省略,并且路径分析优先判断,所以加载速度是最快。...2.2.3 模块编译 以下提到模块编译都是文件模块。 node,每个文件模块都是一个对象。编译执行是引入文件模块最后一个阶段。...3、JSON文件编译 node利用fs模块同步读取JSON文件内容之后,调用JSON.parse()方法得到对象,然后将其赋值给模块对象exports,以供外部引用。...2、编译JavaScript核心模块 引入核心模块过程,也经历了头尾包装过程,然后才执行导出了exports对象。与文件模块不同是,核心模块是从内存中加载。...2.4.1 包结构 完全符合CommonJS规范包目录应该包含以下这些文件: package.json:包描述文件 bin:用于存放可执行二进制文件目录 lib:用于存放JavaScript代码目录

68730

【译】Typescript 3.9 常用新特性一览

3、// @ts-expect-error 新注释添加 4、条件语句中检测未调用函数 5、编辑器提升 5.1 JavaScript CommonJS 自动引入 5.2 代码操作时候正确保留换行符...5.3 添加快速修复缺失函数返回表达式 5.4 支持 "Solution Style" tsconfig.json 文件 6、一些重大变化 主要是 TypeScript 定义和书写规范上改动修复以前...当然最新 3.9 版本修复了这个问题。 1.1 全新 awaited type awaited type 主要是对现在 promise 更好定义使用。...旧版本,TypeScript 强制要求用户无论使用什么文件,都必须以 ECMAScript 形式导入,例如: import * as fs from "fs"; 但在编写 JavaScript...现在有了如下自动引入功能 const { readFile } = require('fs') 5.2 缺失函数返回自动修复功能 某些情况下,我们可能会忘记返回函数最后一条语句,尤其是向箭头函数添加大括号时

1.3K20

分享 9个超级实用 Javascript 技巧

英文 | https://medium.com/@Choco23/nine-super-useful-javascript-tricks-d40a0574e7e6 前言 实际开发工作过程,我积累了一些常用...、超级有用Javascript技巧代码片段,包括其他大神编译JS使用技巧。...1.动态加载JS文件 一些特殊场景下,尤其是一些库框架开发,我们有时会动态加载并执行JS文件。 下面是使用Promise简单封装。...实现Curry JavaScript 柯里化是将采用多个参数函数转换为一系列采用一个参数函数过程。这样可以更灵活地使用函数,减少代码重复,提高代码可读性。...实现CommonJs规范 CommonJS规范核心思想是将每个文件视为一个模块,每个模块都有自己作用域,其中变量、函数对象都是私有的,外部无法访问。要访问模块数据,您必须导出并要求。

16620

Node.js宣布新--experimental-modules【译】

既然已经有其他运行时环境使用ES模块,那么Node.js支持这个JavaScript标准就更重要了。 Nodejs最初将ES模块作为一个保留实验特性原因是为了提供时间让社区去讨论反馈这种设计。...’) 命名空间导出(import * as fs from ‘fs’)。...这项工作进展并且未来可能会发生改变 ES模块文件export语句可以指定引用导入语句为默认导出或命名导出。...' .mjs结尾文件import语句通过node命令行运行时都将被显式当作ES模块 并且,新版本 --experimental-modules 添加了以下特性: .js文件import...但我们意识到社区已经接受了'main'字段,所以这也不太可能这样做因为很多包已经使用了module去引入ES模块javascript,但可能没有评估node.js中使用(因为文件扩展缺省,或者代码里面包含

1.6K20

Node.js

JavaScript后端运行环境 Node.js无法调用DOMBOM等浏览器内置API 主要学习:JavaScript+Node.js内置API模块(fs、path、http等)+第三方API模块...fs.readFile()方法:用来读取指定文件内容。 fs.writeFile()方法:用来向指定文件写入内容。...JavaScript代码,使用fs模块之前,需要先导入它: const fs = require('fs') 读取指定文件内容 fs.readFile('path','options',callback...如果想在事件处理函数,访问与客户端相关数据或属性,可以使用如下方式: server.on('request',(req)=>{ //req是请求对象,它包含了与客户端相关数据属性...同时,使用 require() 导入自定义模块时,如果省略了文件扩展名,则 Node.js 会按顺序分别尝试加载以下文件: 按照确切文件名进行加载 补全 .js 扩展名进行加载 补全 .json

7.9K20

从 vue-cli 源码,我发现了27行读取 json 文件有趣 npm 包

Node.js test runner that lets you develop with confidence 3.3 调试 提前入口测试文件 test/test.js 入口文件 index.js...用最新VSCode 打开项目,找到 package.json scripts 属性 test 命令。鼠标停留在test命令上,会出现 运行命令 调试命令 选项,选择 调试命令 即可。...测试用例 这个测试用例文件,主要就是主入口 index.js 导出两个方法 readPackage, readPackageSync。异步同步方法。...分别是用 fsPromises.readFile fs.readFileSync 读取 package.json 文件。 用 parse-json[15] 解析 json 文件。...path 中文文档[19] path 模块提供了用于处理文件目录路径实用工具。 5.3 fs 文件模块 很常用模块。

3.9K10
领券