要求:给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。
function sum(nums, target) {
const map=new Map()
for(let i=0;i<nums.length;i++){
const num=target-nums[i]
if(map.has(num)){
return [map.get(num),i]
}else{
map.set(nums[i],i)
}
}
};
思路:使用es6中的Map()方法,主要用到的是使用到了Map对象中的has(),set(),get()方法,简单的介绍一下这几个方法:
map.has(key)方法返回一个布尔值,表示某个键是否在Map当中。map.set()方法设置key所对应的键值,然后返回整个Map结构。如果key已经有值,则键值会被更新,否则就新生成该键。map.get()方法读取key对应的键值,如果找不到key,返回undefined。