2016-08-14 33 views
-2

我有这个功能定制填充,这是这样的:%8如何返回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之间,或者我不是?

+1

8-x%8 - >(8-x)%8 – DAXaholic

+2

'8%8 // 0' - 如果从8中减去8,则得到8 – vlaz

+4

'%'优先于'-'。 – trincot

回答

1

x %8从0变化至7

8 - x%8变化从8-0 == 88-7 == 1

+0

哦。 我现在面临如此艰难的面对面。 谢谢大家! – ProTheJoker