// var buf1 = new Buffer(26);
/*返回一个新的buffer对象,这个新buffer和老buffer公用一个内存。
但是被start和end索引偏移缩减了。(比如,一个buffer里有1到10个字节,
我们只想要4-8个字节,就可以用这个函数buf.slice(4,8),因为他们共用一个内存,所以不会消耗内存,)
因为共用内存,所以修改新的buffer后,老buffer的内容同样也会被修改。
start 开始位置,默认
end 结束位置,默认为buffer长度*/
// for (var i = 0 ; i < 26 ; i++) {
// buf1[i] = i + 97; // 97 is ASCII a
// }
// var buf2 = buf1.slice(0, 3);
// console.log(buf2.toString('ascii', 0, buf2.length));
// buf1[0] = 33;
// console.log(buf2.toString('ascii', 0, buf2.length));
// Buffer.prototype.slice = function(start, end) {
// var len = this.length;
// start = ~~start;
// end = util.isUndefined(end) ? len : ~~end;
// if (start < 0) {
// start += len;
// if (start < 0)
// start = 0;
// } else if (start > len) {
// start = len;
// }
// if (end < 0) {
// end += len;
// if (end < 0)
// end = 0;
// } else if (end > len) {
// end = len;
// }
// if (end < start)
// end = start;
// var buf = new NativeBuffer();
// sliceOnto(this, buf, start, end);
// buf.length = end - start;
// if (buf.length > 0)
// buf.parent = util.isUndefined(this.parent) ? this : this.parent;
// return buf;
// };