zoukankan      html  css  js  c++  java
  • node.js教程基础:node.js全局对象

    Node.js 全局对象

    Node.js全局对象本质上是全局的,并且在所有模块中都可用。 您无需在应用程序中包含这些对象,而是可以直接使用。

    这些对象是模块,函数,字符串和对象等。其中一些对象实际上不在全局范围内,而是在模块范围内。

    下面列出了Node.js全局对象的列表:

    • __dirname 当前目录
    • __filename 当前文件名
    • Console 控制台
    • Process 进程
    • Buffer 缓存
    • setImmediate(callback[, arg][, ...])
    • setInterval(callback, delay[, arg][, ...])
    • setTimeout(callback, delay[, arg][, ...])
    • clearImmediate(immediateObject)
    • clearInterval(intervalObject)
    • clearTimeout(timeoutObject)

    Node.js提供Buffer类来存储类似于整数数组的原始数据,但对应于V8堆外部的原始内存分配。 之所以使用Buffer类,是因为纯JavaScript不适用于二进制数据。 因此,在处理TCP流或文件系统时,必须处理八位位组流。

    Buffer类是全局类。 可以在应用程序中访问它,而无需导入缓冲模块。

    有很多方法可以构造Node Buffer, 以下是三种最常用的方法:

    1)创建未初始化的缓冲区:以下是创建10个八位字节的未初始化缓冲区的语法:

    var buf = new Buffer(10);

    2)从数组创建缓冲区:以下是从给定数组创建缓冲区的语法:

    var buf = new Buffer([10,20,30,40,50]);

    3)从字符串创建缓冲区:以下是从给定字符串和可选编码类型创建缓冲区的语法:

    var buf = new Buffer(“Simplely Easy Learning”,”utf-8”);

    写缓冲

    buf.write(string[, offset][, length][, encoding]) 

    参数说明:

    string:指定要写入缓冲区的字符串数据。

    offset:它指定要开始写入的缓冲区的索引。 其默认值为0。

    length:指定要写入的字节数。 默认为buffer.length

    encoding:使用编码。 'utf8'是默认编码。

    从写缓冲区返回值:

    此方法用于返回写入的八位位组数,如果缓冲区不足以容纳整个字符串,则它将写入一部分字符串。

    buf = new Buffer(256); 
    len = buf.write("Simply Easy Learning"); 
    console.log("Octets written : "+  len); 

    读缓冲

    句法:

    buf.toString([encoding] [,start] [,end])

    参数说明:

    encoding:指定要使用的编码。 'utf8'是默认编码

    start:指定开始读取的起始索引,默认为0。

    end:指定要结束读取的结束索引,默认为完整缓冲区。

    返回从缓冲区读取的值:

    此方法从使用指定字符集编码编码的缓冲区数据中解码并返回字符串。

    buf = new Buffer(26); 
    for (var i = 0 ; i < 26 ; i++) { 
      buf[i] = i + 97; 
    } 
    
    console.log( buf.toString('ascii'));             // outputs: abcdefghijklmnopqrstuvwxyz 
    console.log( buf.toString('ascii',0,5));         // outputs: abcde 
    console.log( buf.toString('utf8',0,5));          // outputs: abcde 
    console.log( buf.toString(undefined,0,5));       // encoding defaults to 'utf8', outputs abcde

    综合

     1 console.log(__dirname);
     2 console.log(__filename);  
     3 console.error("Error");
     4 console.warn("Warn") ;
     5 
     6 buf = new Buffer(256);  
     7 len = buf.write("Simply Easy Learning");  
     8 console.log("Octets written : "+  len);  
     9 
    10 buf = new Buffer(26);  
    11 for (var i = 0 ; i < 26 ; i++) {  
    12   buf[i] = i + 97;  
    13 }  
    14 console.log( buf.toString('ascii'));       // outputs: abcdefghijklmnopqrstuvwxyz  
    15 console.log( buf.toString('ascii',0,5));   // outputs: abcde  
    16 console.log( buf.toString('utf8',0,5));    // outputs: abcde  
    17 console.log( buf.toString(undefined,0,5)); // encoding defaults to 'utf8', outputs abcde 

  • 相关阅读:
    (转载) mysql中,option是保留字段么?
    (转载)腾讯CMEM的PHP扩展
    (转载)一句简单命令重启nginx
    (转载)四种常见的 POST 提交数据方式
    (转载)完美解决PHP中文乱码问题
    (转载)file_get_contents("php://input")
    (转载)PHP 下 CURL 通过 POST 提交表单失败的原因之一与解决办法
    (转载)php array_merge 和 两数组相加区别
    Immutable-不变模式与不变类
    zookeeper 编程框架 curator
  • 原文地址:https://www.cnblogs.com/MakeView660/p/12272270.html
Copyright © 2011-2022 走看看