// Integer.parseInt是有最大数限制的,最大值是1999999999,超过这个数值就不能再转换了
// 故使用一下方法的数组长度有限制
var plusOne1 = function(digits) {
var num = parseInt(digits.join(''));
num++;
var strArr = num.toString().split('');
var printArr = [];
strArr.forEach(function (value,index,strArr) {
printArr.push(parseInt(value));
});
return printArr;
};
// 从后往前遍历数组 逢9置0 否则加一 最后判断是否在添加一个最高位1
var plusOne = function(digits) {
var len = digits.length;
for (var i = len - 1; i < len; i--) {
var item = digits[i];
if (item < 9) {
digits[i]++;
return digits;
}
digits[i] = 0;
}
digits.unshift(1);
return digits;
};
console.log(plusOne([3,2,6,4,3,6,2,6,4,3,6,2,6,4,9,9]));
console