前端笔记 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)
}

返回

猜你喜欢

转载自www.cnblogs.com/wuhairui/p/12611046.html