给定一个包括 n 个整数的数组 nums 和 一个目标值 target。找出 nums 中的三个整数,使得它们的和与 target 最接近。返回这三个数的和。假定每组输入只存在唯一答案

var threeSumClosest = function(nums, target) {
let ans = nums[0] + nums[1] + nums[2];
const len = nums.length;
nums.sort((a, b) => a - b); // 排序
for (let i = 0; i < len ; i++) {
let L = i+1;
let R = len-1;
while(L < R){
const sum = nums[i] + nums[L] + nums[R];
const T = Math.abs(sum - target) < Math.abs(ans - target)
if(T){
ans = sum
}
if(sum > target){
R --;
} else if(sum < target) {
L ++;
} else {
return ans
}
}
}
return ans;
};