2016年3月8日
javascript
函数
函数自执行
( function(){…} )() 、 ( function (){…} () )这两种立即执行函数的写法。
要在函数体后面加括号就能立即调用,则这个函数必须是函数表达式,不能是函数声明。
nodejs
Buffer
Buffer类方法
一个用户更好的操作二进制数据的类
我们在操作文件或者网络数据的时候,其实操作的就是二进制数据流,Node为 我们提供了一个更加方便的去操作这个数据流的类Buffer,他是一个全局的类。
new Buffer(size)
分配一个新的 size 大小单位为8位字节的 buffer。
new Buffer(array)
分配一个新的 buffer 使用一个8位字节 array 数组.
new Buffer(string,[encoding])
str String类型 - 需要存入buffer的string字符串.
encoding String类型 - 使用什么编码方式,参数可选.
buf.length:buffer的bytes大小
buf[index]:获取或者设置在指定index索引位置的8位字节内容。
buf.write(string,[offset],[length],[encoding]):根据参数offset偏移量和指定的encoding编码方式,将参数string数据写入buffer。
buf.write(要写入的字符串, 从Buffer对象中的几位开始写入, 写入的字符串的长度, 写入的字符串的编码)
buf.toString([encoding],[start],[end]):根据encoding参数(默认是"utf-8")返回一个解码的string类型;
buf.toJSON():返回一个JSON表示的Buffer实例。JSON.stringify将会默认调用字符串序列化这个Buffer实例。
buf.slice([start],[end]):返回一个新的buffer,这个buffer将会和老的buffer引用相同的内存地址,注意:修改这个新的buffer实例slice切片,将会改变原来的buffer。
buffer.copy(targetBuffer,[targetStart],[sourceStart],[sourceEnd]):进行buffer的拷贝。
静态方法
Buffer.isEncoding(encoding):如果给定的编码encoding是有效的,返回true,否则返回false。
Buffer.isBuffer(obj):测试这个obj是否一个Buffer。
Buffer.byteLength(string,[encoding]):将会返回这个字符串真实byte长度。encoding编码默认是:"utf8"。
Buffer.concat(list,[totalLength]):返回一个保存着将传入buffer数组中所有buffer对象拼接在一起的buffer对象。
Last updated