问题描述
我试图使用 BigInt 将大数相加并添加到总和中。
var sum=0;
for(let i in ar){
sum += BigInt(ar[i]);
}
return (sum);
sum += BigInt(ar[i]);
^
TypeError: Cannot mix BigInt and other types,use explicit conversions
解决方法
我尝试并回答说我们不能将 BigInt 混合到其他类型。所以我将整数和转换为 BigInt,然后将其添加到 BigInt。 如“https://javascript.info/bigint”中所述:
警报(1n + 2); // 错误:不能混合 BigInt 和其他类型
让 bigint = 1n; 让数字 = 2;
// 数字到 bigint 警报(bigint + BigInt(数字)); // 3
// bigint 到数字 警报(数字(bigint)+数字); // 3 所以我现在的工作解决方案是:
var sum=0
for(let i in ar)
sum = BigInt(sum) + BigInt(ar[i]);
return (sum);