前端常见算法面试题
2019-01-31 19:40
134 查看
版权声明:Dream_Lees Blog未经本人允许,不得转载 https://blog.csdn.net/qq_41846861/article/details/86723388
数组去重
function sort(arr){ let obj={}; let newArr=[]; for(let i=0;i<arr.length;i++){ if(!obj[arr[i]]){ obj[arr[i]]=1; newArr.push(arr[i]); } } return newArr; }
采用对象数组方法去重
冒泡排序算法
function mao(arr){ for(let i=0;i<arr.length;i++){ for(let j=0;j<arr.length-i;j++){ if(arr[j]>arr[j-1]){ let tmp = arr[j]; arr[j]=arr[j-1]; arr[j-1]=tmp; } } } return arr; }
字符串反转
function reverse(str){ for(let i=0;i<str.length;i++){ return str.split('').reverse().join(''); } }
产生随机数
function random(n){ let str='123asdasdasrwer'; let obj=''; var l=str.length; for(let i=0;i<n;i++){ return obj+=str.charAt(Math.floor(Math.random()*l)); } }
获取地址栏中某个数的值
function getUrl(){ let url=window.location.href(); let Url=url.split('?'); if(Url[0]==url){ return ''; } let obj={}; let arr=Url[1].split('&'); for(let i=0;i<arr.length;i++){ let arg=arr[i].split('='); obj[arg[0]]=arg[1]; } return obj; } var href=getUrl(); console.log(href['name']);
统计字符中字母出现次数多的
function findMaxDuplicateChar(str) { if(str.length == 1) { return str; } let charObj = {}; for(let i=0;i<str.length;i++) { if(!charObj[str.charAt(i)]) { charObj[str.charAt(i)] = 1; }else{ charObj[str.charAt(i)] += 1; } } let maxChar = '', maxValue = 1; for(var k in charObj) { if(charObj[k] >= maxValue) { maxChar = k; maxValue = charObj[k]; } } return maxChar; }