Converts arrays of integers from one base to another. Uses an O(N²) algorithm.
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore
.travis.yml
LICENSE
README.md
index.js
package.json
test.js

README.md

base-convert-int-array

Converts arrays of integers from one base to another. Uses an O(N²) algorithm.

Installation

$ npm install base-convert-int-array

Usage

First, get an array of integers. For example when converting a value encoded in base 36:

const base36 = Array.from('jld2cyuq0000t3rmniod1foy', char => parseInt(char, 36))
// [ 19, 21, 13, 2, 12, 34, 30, 26, 0, 0, 0, 0, 29, 3, 27, 22, 23, 18, 24, 13, 1, 15, 24, 34 ]

Then, to convert to a byte array:

const baseConvertIntArray = require('base-convert-int-array')
const bytes = baseConvertIntArray(base36, {from: 36, to: 256})
// [ 9, 49, 119, 149, 90, 234, 41, 165, 216, 81, 246, 78, 200, 6, 114, 178 ]

Which you could turn into a buffer:

const buffer = Buffer.from(bytes)

You can specify a fixed length for the resulting array:

const bytes = baseConvertIntArray(base36, {from: 36, to: 256, fixedLength: 16})

A RangeError will be thrown if the input requires more space than fixedLength allows for.