百度前端实习一二三面
三轮面试连着的所以能记下来的题目很少,只能看看遗留在牛客网上的题目
给定一个IMG URL数组,一个loadImg的方法,使用Promise实现每次请求最多不请求三个图片==相当于Promise.all的实现吧
看代码说输出
Promise.resolve(1) .then(2) .then(Promise.resolve(3)) .then(console.log) //Promise值穿透的wen
实现数组扁平化
字符串全排列,请写出一个函数,输入是任意长度的字符串(不包含重复字符),输出所有字母的全部排列组合。例:输入 ‘abcd’ 输出 [‘abcd’, ‘abdc’, ‘adcb’, …]
let str="abc" function fullPailie(str) { let len=str.length; if(len<=1) return str; let res=[]; for(let i in str) { let left=str[i]; let restStr=str.slice(0,i)+str.slice(i+1,len); let restStrPailie=fullPailie(restStr); for(let j in restStrPailie) { res.push(left+restStrPailie[j]); } } return res; } //console.log(fullPailie(str))
请编写一个 JavaScript 函数 parseQueryString,它的用途是把 URL 参数解析为一个对象
let url="https://m.baidu.com/video/page?pd=video_page&nid=11612035902463331683&sign=17051720440437411898&word=%E5%88%98%E5%BE%B7%E5%8D%8E&oword=%E5%88%98%E5%BE%B7%E5%8D%8E&atn=index&frsrcid=4295&ext=%7B%22jsy%22%3A1%7D&top=%7B%22sfhs%22%3A1%2C%22_hold%22%3A2%7D&sl=4&fr0=A&fr1=A&lid=12278046998186179058&referlid=12278046998186179058&ms=1&frsrcid=4295&frorder=4&_t=1616819846585" //console.log(JSON.stringify(parseQueryString(url))) let reg=/\?[\d\D]*/g; let obj={} let arr=Array.from(String(url.match(reg)).slice(1).split("&")) for(let item of arr) { let key=item.split("=")[0]; let value=item.split("=")[1]; //console.log(key,value) obj[key]=value //obj.item.split("=")[0]=item.split("=")[1] } console.log(JSON.stringify(obj))
三面就聊聊大学做了什么之类的