我一直在尝试使用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');
预期:
76561198872713464
答案 0 :(得分:1)
欢迎使用StackOverflow。
要使用如此大的整数进行运算,应使用BigInt,它将正确地处理大于2ˆ53的整数(这是普通Number
在JS上可以支持的最大大小
const sum = BigInt(76561197960265728) + BigInt(912447736);
console.log(sum.toString());