本文最后更新于422 天前,其中的信息可能已经过时,如有错误请发送邮件到1986413837@qq.com
题目要求

参考示例

主要考察JS中对于对象以及数组操作的熟练程度
方法一
1.用Object.entries获取 params中的 key以及value值 (返回数组形式)
2.使用map方法 处理每一对key和value 返回一个新数组 数组元素是’key = value’ 形式的字符串
3.根据原url中是否存在字符串进行拼接 这里使用了join(‘&’)方法进行了拼接
function appendParamsToURL(url, params) {
// TODO: 待补充代码
//第一是获取params里的key和value值
const list = Object.entries(params);
//将key和对应的value用=相互连接
const keyValue = list.map(([key,value])=>{
return key+'='+value
})
//然后在前面拼接&或?
const newUrl = url.includes("?") ? url+ "&"+keyValue.join("&") :url+ "?"+keyValue.join("&")
return newUrl
}
方法二
1.使用Object.keys 和 Object.values 分别获取key值和value值
2.使用reduce方法进行字符串的拼接(累加)

3.根据原url中是否存在字符串进行拼接 对待拼接字符串进行slice处理 当原URL不存在’?’时 删除待拼接字符串前面的’&’符号
function appendParamsToURL(url, params) {
// TODO: 待补充代码
const keys=Object.keys(params)
const values=Object.values(params)
const paramStr=keys.reduce((acc,item,idx)=>{
acc+='&'+item+"="+values[idx]
return acc
},'')
if(url.includes("?")){
return url+paramStr
}
return url+'?'+paramStr.slice(1,paramStr.length)
}