%8怎么能实际返回8?

时间:2016-08-14 18:30:30

标签: javascript modulus

我有自定义填充的这个功能,其工作原理如下:

    var length = 8 - ( (this.buffer.length - 1 + this.buffer.length - 39) % 8);
    var padding = Buffer.alloc(length + 1);
    for (i = 1; i <= length; i++) {
        padding.writeUInt8(i, i-1);
    }
    padding.writeUInt8(length, length);
    this.buffer = Buffer.concat([this.buffer, padding]);

其中this.buffer可能有可变长度。 (始终> 0) 但是,怎么能有一个长度为8的数字呢? 由于我正在做8 - x%8,我期待0到7之间的值,或者我不是吗?

1 个答案:

答案 0 :(得分:1)

x %8从0到7不等。

8 - x%88-0 == 88-7 == 1不等。