1 | "use strict";
|
2 |
|
3 | var pow2 = [];
|
4 | for(var i = 0; i < 32; i++)
|
5 | pow2[i] = Math.pow(2, i);
|
6 |
|
7 |
|
8 | function unsigned(buffer, offset, length) {
|
9 | var result = 0;
|
10 | var blen = buffer.length * 8;
|
11 |
|
12 | offset = offset || 0;
|
13 |
|
14 | if(offset < 0)
|
15 | offset = blen + offset;
|
16 |
|
17 | if(length === undefined)
|
18 | length = blen - offset;
|
19 |
|
20 | if(!length)
|
21 | return 0;
|
22 |
|
23 | for(var i = 0, j = offset + length - 1; i < length; i++, j--)
|
24 | result += buffer[j >> 3] & pow2[7 - j % 8] ? pow2[i] : 0;
|
25 |
|
26 | return result;
|
27 | }
|
28 |
|
29 | module.exports = unsigned;
|