• 前端笔记 2020.4.1 (nodejs文件读写、最简nodejs搭建http服务器,数据转型)数据类型


    nodejs文件读写:

    //读取文件流
    function readStream(){
        var fs=require("fs");
        var data="";
        var readerStream=fs.createReadStream("input.txt");
        readerStream.setEncoding("utf-8");
        readerStream.on("data",function(chunk){
            data+=chunk;
        });
        readerStream.on("end",function(){
            console.log(data);
        });
        readerStream.on("error",function(err){
            console.log(err.stack);
        });
        console.log("end");
    }
    //写入文件流
    function writeStream(){
        var fs=require("fs");
        var data=new Date().getTime()+"";
        var writerStream=fs.createWriteStream("output.txt");
        writerStream.write(data,"utf-8");
        writerStream.end();
        writerStream.on("finish",function(){
            console.log("写入完成");
        });
        writerStream.on("error",function(err){
            console.log(err.stack);
        });
        console.log("end");
    }
    //管道流 将一个文件的内容复制到另一个文件中
    function copy(){
        var fs=require("fs");
        var readerStream=fs.createReadStream("input.txt");//读取input.txt的流
        var writerStream=fs.createWriteStream("output.txt");//写入output.txt的流
        //读取input,写入output
        readerStream.pipe(writerStream);
        console.log("end");
    }
    
    //readStream();
    //writeStream();
    copy();

    buffer转为json:

    //buffer转为json
    var buf1=new Buffer("www.baidu.com");
    var json=buf1.toJSON(buf1);
    console.log(json);

    最简nodejs搭建http服务器:

    var h=require("http");
    h.createServer(function(req,res){
        res.writeHead(200,{'Content-Type':'text/plain'});
        res.end('hello world');
    }).listen(8888);
    console.log("http://localhost:8888");

    数据类型转型:(很少用到)

    //数据转型
    {
        console.log(Boolean("-"),Boolean(""))//true false 字符串 非空为true
        console.log(Boolean(1),Boolean(0))//true false 数字 非0为true
    }
    数据类型检查:(typeof基本类型 instanceof引用类型)
    //数据类型检查
    {
        console.log(typeof 1)//number 基本类型可以用
        console.log([] instanceof Array,{} instanceof Object)//true true 引用类型可以用
    }
    symbol类型:(可以作为对象属性名,不能用点操作)
    //symbol
    {
        let s=Symbol("1")
        console.log(s,String(s))//Symbol(1) Symbol(1) 转字符串
        //可以作为对象属性名
        let a1=Symbol(1)
        let a2=Symbol(1)
        let o={
            [a1]:11,
            [a2]:12
        }
        console.log(o[a1],o[a2])//11 12
    }

    对象的深拷贝:(数据修改后不会被影响)

    //对象的拷贝 不关联堆栈 深拷贝
    {
        let o={
            a:{
                b:1
            },
            c:2
        }
        let p=JSON.stringify(o)//对象转字符串
        let o1=JSON.parse(p)//字符串转对象
        o.a.b=3
        o.c=3
        console.log(o,o1)
    }

    返回

  • 相关阅读:
    spark视频-Spark Streaming实时计算和流处理
    spark视频-Spark把云计算大数据速度提高100倍以上
    spark视频-Spark on Docker深入揭秘
    spark视频-Spark as a Service
    spark视频-Spark on Yarn
    MyEclipse Web 项目导入 Eclipse 中需要改的文件
    【解决】小米M1刷机教程(卡刷)
    【解决】笔记本发射WiFi
    【解决】U盘装系统(Win7/Win8)& 装双系统
    【解决】Internet访问看似正常(无叹号受限)却打不开网页
  • 原文地址:https://www.cnblogs.com/wuhairui/p/12611046.html
Copyright © 2020-2023  润新知