编辑代码

// 函数实现一个大位数乘法,可以计算出诸如1865459497823*6349526719336的结果
// 实现思路:乘法的手算方式,一位一位相乘,建立数组存储每一位的数
function bigMultiply(num1,num2) {
    num1 = num1.toString()
    num2 = num2.toString()
	let rs = new Array(num1.length+num2.length).fill(0)
	for (let i = num1.length-1; i >=0; i--) {
		let temp = ''
		let carray = 0
		for (let j = num2.length - 1; j >= 0; j--) {
			let t = num2[j] * num1[i] + carray
			let sum = rs[i+j+1] + t

			rs[i + j + 1] = sum%10
			rs[i+j] += sum/10 | 0 //与零非为取整
		}
	}
	while (rs[0] === 0) {
		rs.shift()
	}

	return rs.join('')
}

console.log(bigMultiply('1865459497823', '6349526719336'));