node基础
错言语
这个作者很懒,什么都没留下…
展开
-
node基础---补充内容
Unicode任何字符都是2个字节;UTF-8汉字3个字节,英文1个字节,特殊西文2个字节计算机一个0或一个1我们称为1位(bit)8bit = 1byte (美书)1024byte = 1kb1024kb = 1mb1024mb = 1gb1024gb = 1tbvar str = "hello 大世界";var buf = Buffer.from(str);console.log(buf.length);//占用内存的大小 15console.log(str.length);//字原创 2021-10-28 22:45:00 · 271 阅读 · 0 评论 -
16.fs其他方法
FS的其他方法验证路径是否存在 fs.existsSync(path)获取文件信息 fs.stat(path, callback) fs.statSync(path) -获取文件的状态 -他会给我们的返回一个对象,这个对象保存了当前对象状态的相关信息删除文件 fs.unlink(path, callback) fs.unlinkSync(path)列出文件 fs.readdir(path[ options], callback) fs.readdirSync(原创 2021-10-28 22:00:00 · 224 阅读 · 0 评论 -
15.流式文件读取
流式文件读取—也适用于大文件可以分多次将文件读取到内存var fs = require("fs");//创建一个可读流var rs = fs.creatReadStream("an.mp3");//创建一个可写流var ws = fs.creatWriteStream("b.mp3");//监听流的开启和关闭rs.once("open",function(){ console.log("可读流打开了");});rs.once("close",function(){原创 2021-10-28 20:15:00 · 806 阅读 · 0 评论 -
14.简单文件读取
简单文件读取fs.readFile(path[, options], callback)fs.readFileSync(path[, options]) -path 要读取的文件的路径 -options 读取的选项 -callback 回调函数,通过回调函数将读取到内容返回(err,data) err 错误对象 data 读取到的对象,会返回一个Buffer(读取的文件不唯一,所以返回Buffer)var fs = require("fs");fs.readFile("hel原创 2021-10-28 19:45:00 · 235 阅读 · 0 评论 -
13.流式文件写入
流式文件写入同步、异步、简单文件的写入都不适合大文件的写入,性能较差,容易导致内存的溢出fs. createWriteStream (path[, options])-可以用来创建一个可写流path,文件路径options配置的参数var fs=require("fs") ;//流式文件写入//创建一个可写流var ws = fs.createWriteStream("he11o3. txt") ;//通过监听流的open和close事件来监听流的打开和关闭ws.once("原创 2021-10-28 19:15:00 · 256 阅读 · 0 评论 -
12.简单文件写入
简单文件写入—同步和异步fs.writeFileSync(file, data[, options])fs.writeFile(file, data[, options], callback) -file 要操作的文件路径 -data 要写入的数据 -options 选项,可以对写入进行一些设置 -callback 当写入完成以后执行的函数注:1.writeFile直接封装好了打开文件,关闭文件(想要查看源码,直接CTRL点击)2.当写入的hello3.txt有内容时,通过“w”写原创 2021-10-28 15:05:53 · 111 阅读 · 0 评论 -
11.异步文件写入
异步文件写入—性能更好fs.open(path[, flags[, mode]], callback) -用来打开一个文件 -异步调用的方法,结果都是通过回调函数的参数返回的 -回调函数的两个参数 err 错误对象,如果没有错误则为null fd 文件的描述符fs.write(fd, string[, position[, encoding]], callback) -用异步写入一个文件fs.close(fd[, callback]) -用来关闭文件的//1.引入fs原创 2021-10-28 15:04:28 · 229 阅读 · 0 评论 -
案例---模块math
定义一个模块math -在该模块中提供两个方法 add(a,b)//求a+b mul (a,b) //求a,b的积math.js:exports.add = function (a,b){ return a+b;};exports.mul = function (a,b){ return a*b;};在module.js中使用math.jsvar math = require('./math');//引用math.jsconsole.log(math.ad原创 2021-10-28 15:03:16 · 123 阅读 · 0 评论 -
10.同步文件的写入
文件系统(File System)文件系统简单来说就是通过Node来操作系统中的文件使用文件系统,需要先引入fs模块,fs是核心模块,直接引入不需要下载在Node中,与文件系统的交互是非常重要的,服务器的本质就将本地的文件发送给远程的客户端Node通过fs模块来和文件系统进行交互该模块提供了一些标准文件访问API来打开、读取、写入文件,以及与其交互。要使用fs模块,首先需要对其进行加载const fs = require("fs ");同步和异步调用fs模块中所有的操作都有两种形式可供原创 2021-10-27 06:15:00 · 138 阅读 · 0 评论 -
9.Buffer缓冲区
Buffer缓冲区产生的原因用户发给服务器的请求都是二进制数据,数据存储在Buffer中服务器给客户端的响应中,除了数值,字符串等还有图像、音频、视频等,传统的array数组无法存储这些二进制的文件。Buffer (缓冲区) ●从结构上看Buffer非常像一 个数组,操作方法也类似与数组 ●数组无法存储这些写二进制的文件,buffer就是专门用来存储二进制数据,但是显示时都是以16进制,实际上一个元素就表示内存中的一个字节,范围是00-ff。 ●实际上Buffer中的内存不是通过Java原创 2021-10-27 05:45:00 · 195 阅读 · 0 评论 -
8.node搜索包的流程
node搜索包的流程node在使用模块名字时,他会首先在当前目录的node_modules中寻找是否含有该模块 如果有则直接使用,没有则会去上一级node_modules中寻找; 如果有则直接使用,没有则会去更上一级中寻找,直到找到为止; 找到磁盘的根目录为止,如果没有则报错。...原创 2021-10-27 05:30:00 · 254 阅读 · 0 评论 -
7.配置cnpm
配置cnpm1.在下载相对大的包时,npm相对较慢2.由于一些问题,无法访问3.npm有一些情况下,不太稳定,多人发请求,npm服务器会误认为是攻击行为,对ip地址屏蔽解决方法:镜像服务器淘宝镜像npm config set registry https://registry.npm.taobao.org查看是否成功npm config get registry...原创 2021-10-27 05:15:00 · 717 阅读 · 0 评论 -
6.npm
NPM(Node Package Manager)包管理 NPM帮助其完成了第3 方模块的发布、安装和依赖等。借助NPM Node与第三方模块之间形成了很好的一个生态系统。(使开发变得简单,下载node后自带npm)NPM命令 npm -V -查看版本 npm -version -查看所有模块的版本 npm -帮助说明 npm search包名 -搜索模块包 npm install /i 包名 -在当前目录安装包 npm install 包名原创 2021-10-27 05:00:00 · 320 阅读 · 0 评论 -
5.包简介
包packageCommonJS的包规范允许我们将一 组相关的模块组合到一起,形成一组完整的工具。CommonJS的包规范由包结构和包描述文件两个部分组成。包结构-用于组织包中的各种文件包描述文件-描述包的相关信息,以供外部读取分析包结构包实际上就一个压缩文件,解压以后还原为目录。符合规范的目录,应该包含如下文件:package.json 描述文件bin 可执行二进制文件lib js代码doc 文档test 单元测试包描述文件包描述文件用于表达非代码原创 2021-10-27 04:45:00 · 156 阅读 · 0 评论 -
4.exports和module
exports和module.exports的区别exportsjuli.jsexports = { name :"猪八戒"; age:89; sayName:function(){ console.log("我是猪八戒"); }};yinyong.jsvar juli = require("./juli");console.log(juli.name);console.log(juli.age);juli.sayName();直接使原创 2021-10-27 04:30:00 · 123 阅读 · 0 评论 -
3.node简介
node简介-node.js是一个能够在服务器端运行javascript的开放源代码、跨平台javascript运行环境-node采用google开发的V8引擎运行代码,使用事件驱动、非阻塞和异步I/O模型等技术来提高性能,可优化应用程序的传输量和规模总结:node.js扩展了js的适用范围,从前端到整个系统(浏览器–》服务器)瑞安·达尔(node之父),node主要借鉴Ruby所有项目最终的问题都是i/o问题,node主要是在客户端和服务器间加了一个node服务器,用来渲染页面node的用原创 2021-10-27 00:08:08 · 190 阅读 · 0 评论 -
2.进程和线程
进程和线程任务管理器–进程–CPU显示00表示闲置进程: -进程负责程序的运行提供一个必备的环境 -进程类似于一个工厂中的车间线程: -线程是计算机中最小的计算单位,线程负责执行进程中的程序 -线程相当于工厂中的工人单线程: -每个正在运行的程序(即进程),至少包括一个线程,这个线程叫主线程,主线程在程序启动时被创建,用于执行main函数,只有一个主线程的程序,称作单线程程序,主线程负责执行程序的所有代码(UI展现以及刷新,网络请求,本地存储等等)。这些代码只能顺序执行,无法并发原创 2021-10-27 00:06:23 · 79 阅读 · 0 评论 -
1.命令行窗口
命令行窗口(小黑屏)、CMD窗口、终端、shell打开方式:1.开始菜单—>运行—>CMD—>回车(win7)2.win+R—>CMD—>回车(win10)3.搜索框—>CMD—>回车(win10)常用指令:dir命令:列出当前目录下的所有文件cd命令:进入指定的目录,cd 目录名。例如:cd Desktopmd命令:创建一个文件夹,md 目录名rd命令:删除文件夹换盘符:“:”例如E:目录:. 当前目录,例如:(./)style.css括号原创 2021-10-27 00:04:59 · 173 阅读 · 0 评论