任务是:找出所有项的和最大的 arr
数组的连续子数组。
写出函数 getMaxSubSum(arr)
,用其找出并返回最大和。
一开始写的是:
function getMaxSubSum(arr){
let maxsum = 0;
let partialSum = 0;
for(let item in arr){ //此处用了for..in函数
partialSum += item;
maxsum =Math.max(maxsum,partialSum);
if(partialSum<0)partialSum=0;
}
return maxsum;
}
然后程序没有报错,出来的结果是错的,后来改了for...of才有正确结果,很神奇。
教训就是别用for...in 来处理数组。