%8 怎么可能 return8 呢?
How can % 8 actually return 8?
我有这个自定义填充的功能,它的工作原理是这样的:
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 之间,或者不是?
x %8
从 0 到 7。
8 - x%8
从 8-0 == 8
到 8-7 == 1
。
我有这个自定义填充的功能,它的工作原理是这样的:
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 之间,或者不是?
x %8
从 0 到 7。
8 - x%8
从 8-0 == 8
到 8-7 == 1
。