• Buffer篇


    // 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;
    // };

  • 相关阅读:
    用数组实现的字符串和用指针实现的字符串
    c语言 10
    c语言 10-4
    函数间数组的传递,是以指向第一个元素的指针的形式进行传递的。
    openjudge7624 山区建小学
    NOIP2000 乘积最大
    openjudge6252 带通配符的字符串匹配
    codevs 3289 花匠
    codevs 3641 上帝选人
    各种子序列问题
  • 原文地址:https://www.cnblogs.com/xiao-zhang-blogs/p/6050487.html
Copyright © 2020-2023  润新知