前言
JS中整数有存储范围,一旦超出这个范围则会丢失精度,通过MAX_SAFE_INTEGER可以看到JS中支持的最大的、安全的正整数为9007199254740991。

 
 JS新类型BigInt可以处理大整数运算,但这次不逃课,本文将尝试自行处理大整数相加,实际开发中还是更推荐直接使用BigInt。
实现
接收两个可能为大整数的参数,求和。
为了确保不丢失精度,这里将参数和返回都设为字符串。思路同小学数学,相加进位。
function sum(a, b) {
  const len = Math.max(a.length, b.length)
  let result = ""
  a = a.padStart(len, "0") // 不足最高位补0
  b = b.padStart(len, "0") // 不足最高位补0
  let carry = 0 // 进位
  
  for (let i = len - 1; i >= 0; i--) {
    const n = +a[i] + +b[i] + carry
    carry = Math.floor(n / 10)
    result = (n % 10) + result
  }
  if (carry) result = "1" + result
  
  return result
}















![[数据集][目标检测]光伏发电板红外图像鸟粪检测数据集VOC+YOLO格式173张1类别](https://i-blog.csdnimg.cn/direct/53a5e687baa041c2903b38881bbc3987.png)



