美文网首页
Node的模块之fs,readline,url

Node的模块之fs,readline,url

作者: 小宇大神 | 来源:发表于2016-09-12 22:15 被阅读0次

node的模块

  1. require:导入一个模块
  2. exports:导出模块
  3. module.exports:导出模块
  • 代码(一)
    a.js:
    //以函数的形式进行导出,函数的名称为li
    exports.li = function(){
    console.log("heheda!");
    }

      b.js:
      //因为a.js不是核心模块,所以使用require时要使用路径
      var mo = require('./a.js');
      //直接调用函数,此时的函数相当于mo模块的方法
      mo.li();
    
  • 代码(二)
    a.js:
    function li(){
    console.log('hello nodejs');
    }
    //将函数作为模块导出
    module.exports = li;

      b.js:
      //导出模块
      var mo = require('./a.js');
      mo();
    
      *tip:所有的exports收集到的属性和方法,都赋值给了    Module.exports。当然,这有个前提,就是Module.exports本身不具备任何属性和方法。
      如果,Module.exports已经具备一些属性和方法,那么exports收集来的信息将被忽略。*
    

node的文件操作

  1. 文件操作使用文件系统模块fs

  2. 操作文件有两种方法,同步操作和异步操作。
    同步读取:fs.readFileSync()
    异步读取:fs.readFile(文件地址,文件编码,回调函数(err,data))
    eg:

     //导入文件系统模块
     var fs = require('fs');
     //读取文件,第一个参数是文件路径,第二个参数是一个可选参数,是文件的格式,第三个参数是回调函数
     //回调函数的参数,第一个参数是错误对象,第二个参数是读取文件的内容
     fs.readFile('1.txt',function(err,data){
             //判断是否出错
           if(err){
                   console.log(err);
             } else {
                    //toString():将对象转化为字符串
                     console.log(data.toString());
             }
     });
    

异步模式下写入文件的语法格式:
fs.writeFile(filename, data[, options], callback(err))
如果文件存在,该方法写入的内容会覆盖旧的文件内容。

node的io键盘交互

tip:Readline是node里实现标准输入输出的封装好的模块。通过这个模块我们可以以逐行的方式读取数据流。eg:

    //导入readline模块
     var readline = require('readline');
    //创建readline接口实例
    var rl = readline.createInterface({
        //使用全局对象process进行获取输入和输出的对象
        input:process.stdin,
        output:process.stdout
    });
    //设置提示符
    rl.setPrompt('请输入一些东西');
    rl.prompt();
    rl.on('line',(line) => {
        var str = line.trim();
        console.log(123);
        rl.prompt();
    }).on('close',() => {
        console.log('exit');
        process.exit();
    });

tip:

  • 方法setPromat(promat),就是给每一行设置一个提示符
  • prompt:就是在等待用户输入数据,以行为单位读取数据.
    + 这里又监听了’line’ 事件,因为promat方法调用一次就只会读取一次数据,所以,在这个方法又调用了一次promat方法,这样就可以继续读取用户输入,从而达到一种命令行的效果。

node的url判断渲染模块

    //导入http模块
    var http = require("http");
    //导入文件系统模块
    var fs = require("fs");
    //导入url模块
    var urlapi = require("url");

    //创建http.server实例
    http.createServer(function(req,res){
       //解析请求的URL
        var url = urlapi.parse(req.url);
        console.log(url.pathname);
    }).listen(3000);

tip:可以通过判断url.pathname的不同渲染不同的页面

作业

    nodejs实现IO键盘交互或浏览器输入交互
    nodejs判断url请求渲染2个简单的模板
    写3个静态的页面,首页,列表页,详情页

相关文章

  • Node的模块之fs,readline,url

    node的模块 require:导入一个模块 exports:导出模块 module.exports:导出模块 代...

  • 兄弟会8.9号笔记

    node.js模块学习 http 模块 fs 模块 url 模块 http 模块 HTTP http.STA...

  • 周国康-20160809笔记

    HTTP,URL,FS模块 HTTP模块 FS模块 URL模块 作业 构造静态服务Server:解析URL,根据U...

  • Node.js常用的内置模块

    常用的内置模块(path,fs,url,querystring,) Node.js中提供了一些原生的模块,我们称之...

  • Node(3)

    一、模块系统 1.什么是模块 Node.js中常用的核心模块有: http模块 fs文件系统模块 url模块 pa...

  • 04-文件读写

    fs模块---》操作文件---》io----》node的特长 fs模块是node非常重要的模块,能体现出node的...

  • 关于node.js一些模块的记录「FS模块」

    目录 Node.JS教程 FS模块 Path模块 FS模块 Path模块 Node.js path 模块提供了一些...

  • Node基础备注

    模块 http模块 url模块 fs模块 fs.state:检测是文件还是目录fs.mkdir:创建目录fs.wr...

  • 2016,9,13

    ##node.js的学习 #node.js的fs模块 var fs = require('fs'); functi...

  • 三:fs模块

    node的fs模块是文件模块,为node自带的模块,负责文件的读写。fs模块可以同步和异步读写文件 1. 异步读取...

网友评论

      本文标题:Node的模块之fs,readline,url

      本文链接:https://www.haomeiwen.com/subject/wanpettx.html