相关疑难解决方法(0)

Javascript总结大整数

在javascript中,我想用以下方法创建一个大型布尔数组(54个元素)的二进制哈希:

function bhash(arr) {
   for (var i = 0, L = arr.length, sum = 0; i < L; sum += Math.pow(2,i)*arr[i++]); 
   return sum;
}
Run Code Online (Sandbox Code Playgroud)

简而言之:它创建了一个最小的整数来存储一个布尔数组.现在我的问题是javascript显然使用浮点数作为默认值.我必须创建的最大数量是2 ^ 54-1但是一旦javascript达到2 ^ 53,它就会开始做奇怪的事情:

9007199254740992+1 = 9007199254740994
Run Code Online (Sandbox Code Playgroud)

有没有办法在javascript中使用整数而不是浮点数?还是大整数求和?

javascript biginteger

21
推荐指数
3
解决办法
4万
查看次数

在javascript中添加两个大数字

我一直在尝试使用 javascript 添加以下数字; 76561197960265728+912447736

遗憾的是,由于 JavaScript 中的四舍五入,它不会得到正确的数字,我需要该数字作为字符串。

我尝试使用 substr 删除最后几位数字,然后将两个数字相加,然后将两个字符串放在一起,遗憾的是,如果第一个数字是 1,则这不起作用。

function steamid(tradelink){
    var numbers = parseInt(tradelink.split('?partner=')[1].split('&')[0]),
            base = '76561197960265728';

    var number = parseInt(base.substr(-(numbers.toString().length + 1))) + numbers;
            steamid = //put back together
}

steamid('https://steamcommunity.com/tradeoffer/new/?partner=912447736&token=qJD0Oui2');
Run Code Online (Sandbox Code Playgroud)

预期的: 76561198872713464

javascript node.js

-1
推荐指数
1
解决办法
5091
查看次数

标签 统计

javascript ×2

biginteger ×1

node.js ×1