关于node.js 简单操作

初识 node.js

//nodejs中的各种功能的API都存储在不同的模块中, // 例如文件功能,要使用这些功能就必须先导入这些模块。


require 导入文件

//require除了可以导入文件,还可以导入一个模块,
// 导入模块时,参数是一个字符串,表示模块名。
//nodejs中自带了很多模块,例如fs模块,http模块, url模块等。


创建一个index.js文件

fs 是file system的缩写,表示文件系统模块,可以用于文件和文件夹的操作,例如新建, 删除,重命名,复制粘贴等。


var fs = require("fs");
console.log(fs);

创建一个文件并存储指定的内容。

同步(synchronized)版的创建文件方法
//第一个参数是创建文件的路径(目录和文件名),第二个参数是文件中存储的内容。
 fs.writeFileSync("./abc.txt","hello world123");

//异步(asynchronized)版的创建文件方法
//前两个参数和同步版相同,第三个参数是 操作 执行完毕之后的回调函数 ,回调函数中第一个参数是err,当操作成功时err为空,操作失败时err是失败的原因。
fs.writeFile("./abc.txt","这是异步版方法创建的文件",function(err){
    if(!err){
         console.log("创建成功");
     }else{
         console.log(err);
     }
 });

同步函数和异步函数的区别:
同步执行的函数,会阻塞线程:函数的任务完成之后才会执行下一行代码。
异步执行的函数,函数的任务不会立刻执行,而是先执行后面代码,等后面的代码执行完毕,系统进入空闲状态时再执行函数的任务,任务执行完毕之后通过回调函数传递任务执行的结果。
由于同步执行的函数会阻塞线程,所以只适用于执行速度快的任务。而对于耗时较长且不稳定的任务(例如文件内容读写,数据库操作,网络请求等)


setTimeout(function(){
     console.log("执行了");
 },0);

 console.log("123");
 console.log("123");

同步版创建目录。参数是所创建的目录的路径。

 fs.mkdirSync("./d1");
 fs.mkdirSync("./d1/d2");

异步版创建目录,参数是路径和回调函数,回调函数的次一个参数是执行结果。(整个nodejs中,回调函数的第一个参数都是err)

fs.mkdir("./d1",function(err){
    console.log(err);
     fs.mkdir("./d1/d2",function(err){
         console.log(err);
     });
 });

同步版的读取文件内容,参数是读取的文件的路径。
返回值是读取的内容(得到的是buffer对象,数据流,可以通过toString转为字符串)。

//用变量名content 来接收
  var content = fs.readFileSync("./abc.txt");
  var str = content.toString();
   console.log(str);

异步版文件读取,第一个参数是读取的文件的路径,第二个参数是回调函数。
回调函数的第一个参数是任务结果, 第二个参数是本次读取到的内容。

fs.readFile("./abc.txt",function(err,data){
    if(!err){
        // data  传进去的内容(自定义,但是要保持一致)
        // 转化为字符串格式
        console.log(data.toString());
    }else{
        console.log(err+"错误信息");
    }
});
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值