剑指 Offer II 002. 二进制加法
var addBinary = function (a, b) {
var count = 0
var sum = ''
var i, j
var temp
for (i = a.length - 1, j = b.length - 1; i > -1 && j > -1; i--, j--) {
temp = count + parseInt(a[i]) + parseInt(b[j])
sum += temp > 1 ? String(temp - 2) : String(temp)
count = temp > 1 ? 1 : 0
}
var k = i > j ? i : j
var arr = i > j ? a : b
while (k > -1) {
temp = count + parseInt(arr[k])
sum += temp > 1 ? String(temp - 2) : String(temp)
count = temp > 1 ? 1 : 0
k--
}
if (count === 1) { sum += '1' }
return sum.split('').reverse().join('')
}