解决方案 (一)
由于forEach无法在未完成遍历的情况下return,
故在循环外return
var twoSum = function(nums, target) {
let arr=[];
nums.forEach((item,index)=>{
nums.forEach((item1,index1)=>{
let demo = item+item1;
if(index!=index1&&demo==target){
arr= [index1,index]
}
})
})
return arr;
};
解决方案(二)
使用for循环替代forEach(同时for循环占用内存及耗时均低于forEach)
var twoSum = function(nums, target) {
let l=nums.length;
for(let i=0;i<l;i++){
for(let j=0;j<l;j++){
if(i!=j&&nums[i]+nums[j]==target){
return [i,j]
}
}
}
};