美文网首页
初识Node之Node常见语法操作总结

初识Node之Node常见语法操作总结

作者: Welkin_qing | 来源:发表于2018-09-20 21:33 被阅读71次

    1.利用typeof区分数据类型

    var a;
    var b = 12;
    var c = 'node.js';
    var d = true;
    var e = function() {
    
    }
    var f = null;
    var g = {
        num: 12
    }
    var arr = [a,b,c,d,e,f,g];
    for(var i = 0, max = arr.length; i < max; i++ ){
        console.log(typeof arr[i])
    }
    

    输出结果为:

    undefined
    number
    string
    boolean
    function
    object
    object
    

    可以看出null 和object都返回了object,这是因为null实际上是一个空对象指针,当一个变量只声明未赋值时都只返回object

    2.利用Boolean()转化数据类型

    var a;
    var b = null;
    var c =0;
    var d ='';
    var e = NaN;
    var arr = [a,b,c,d,e];
    for(var i=0, max = arr.length;i<max;i++){
        console.log(Boolean(arr[i]))
    }
    

    结果如下:

    false
    false
    false
    false
    false
    

    需要注意的是:空字符串,0,null,undefined,NaN都将转化为false,其他则会转化为true。

    3.Node.js尝试路径

    例如:某个模块的绝对路径是home/hello/hello.js,在该模块中导入其他模块,写法为require("me/first"),Node.js会依次使用一下路径

    /home/hello/node_modules/me/first
    /home/node_modules/me/first
    node_modules/me/first
    
    

    4. 客户端向 http 发送请求

    a. http.request 使用 get 方法

    首先,我写了一个在请求http相应的页面,打开浏览器输出hello node

    var http = require('http');
    http.createServer(function(request, response){
        response.writeHead(200, {'Content-Type': 'text/plain'});
        response.end('Hello Wrold\n');
    }).listen(5000);
    console.log('Server running at http://localhost:5000/');
    

    然后再新建一个文件,http.request 使用 get方法

    const http = require('http');
    let reqData = '';
    http.request({
        'host': '127.0.0.1',
        'port': '5000',
        'method': 'get'}, function(res){
        res.on('data', function(chunk){
            reqData += chunk;
        });
        res.on('end', function() {
            console.log(reqData);
            
        });
    
    }).end();
    

    同时运行,结果会在命令行输出 hello node

    b. 利用http.get()方法实现同样的效果

    const http = require('http');
    let reqData = '';
    
    http.get({
        'host': '127.0.0.1',
        'port': '5000'
    }, function(res) {
        res.on('data', function(chunk) {
            reqData += chunk;
        });
        res.on('end', function(){
            console.log(reqData);
        })
    }).end();
    

    c. 利用response实现

    const http = require('http');
    let reqData = '';
    let option= {
        'host': '127.0.0.1',
        'port': '5000'
    };
    
    const req = http.request(option);
    
    req.on('response', function(res) {
        res.on('data', function(chunk) {
            reqData += chunk;
        });
        res.on('end', function() {
            console.log(reqData);
        });
    });
    

    命令集锦

    npm init -y   
    //系统使用默认值生成package.json文件
    npm install underscore   
    //安装js工具库
    安装命令 + -S  
    //安装包的记录会在package.json的dependencies
    安装命令 + -dev  
    //安装包的记录会在package.json的devDependencies
    
    
    
    url.parse() 
    //解析urrl地址,返回url对象
    url.format()
    //接受一个url对象为参数,返回完整的url地址
    url.ressolve(from, to)
    //接受base url ,href url 像url解析,返回完整的url
    
    
    
    
    querystring.parse();
    //查询字符串反序列化为一个对象;类似ISON.parse()
    querysstring.stringify()
    //对象反序列化为一个字符串;类似JSON.stringify
    
    
    
    util.inspect();
    //返回一个对象反序列化为字符串
    util.format()
    //返回使用占位符格式化的字符串,类似c语言的printf
    util.log()
    //在控制台输出,类似console.log;带有时间戳
    
    
    path.join()
    //将所有的参数连接起来,返回一个路径
    path.extname()
    //返回路径参数的扩展名,无扩展时返回空字符串
    path.parse()
    //将路径解析为一个路径对象
    path.format
    //接受一个路径对象为参数,返回一个完整的路径地址(路径字符串)
    
    
    dns.resolve()
    //将一个域名解析为一个指定类型的数组
    dns.lookup
    //返回第一个被发现的ipv4或者ipv6的地址
    dns.reverse
    //通过ip解析域名
    

    一个文件对象有:
    root : 根目录(磁盘名)
    dir: 完整目录
    base: 路径最后一个部分(肯是文件名或者文件夹名,是文件名时带拓展名)
    ext: 拓展名
    name: 文件名(不带拓展名)

    相关文章

      网友评论

          本文标题:初识Node之Node常见语法操作总结

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