给定一个数组 返回所有相邻相加和为10的搭配
function arrFn (arr, target) { // arr传入数组 target目标和let j = 0,sum = 0,resArr = [],result = [];while (j < arr.length) {if (arr[j] > target) { // 值超了 pass 组合数组置空j++;resArr = [];} else { // 求和sum = sum + arr[j];resArr.push(j); // 把搭配推入数组if (sum > target) { // 超了 和减去组合数组的第一个sum = sum - arr[resArr.shift()];} else if (sum === target) { // 相等 把组合数组推入结果数组let arrCopy = JSON.parse(JSON.stringify(resArr)); // 深拷贝result.push(arrCopy);sum = sum - arr[resArr.shift()];}j++; // 角标右移}}return result;}
