超过18位长度的bigint转进制
2021-04-15 本文已影响0人
晓函
用到了bignumber这个库,https://github.com/MikeMcl/bignumber.js
代码:
const BigNumber = require('./bignumber.js')
function string10to36(number) {
if(number==null)
return '';
let n = new BigNumber(String(number));
return n.toString(36);
}
function string36to10(number_code) {
let n = new BigNumber(number_code,36);
return n.toString();
}
//测试,没问题
var id = "1382253560489709568";
var id36 = util.string10to36(id);
var id10 = util.string36to10(id36);
console.log(`id=${id},id36=${id36},id10=${id10},${id===id10?'Right':'Wrong'}`);
//结果id=1382253560489709568,id64=ai27zrfm8ohs,id10=1382253560489709568,Right