面试常见编程题

营业啦~主要是记录一下 方便自己以后阅读复习 会持续更新哒~

第一题:每个字母重复出现的次数

1 var arr = 'abcdaabc';
2 //每个字母重复出现的次数
3 var info = arr.split('').reduce((p,k) => (p[k]++|| (p[k]=1),p),{});
4 console.log(info) //{a:3,b:2,c:2,d:1}

第二题:判断一个字符在字符串中出现的次数

1 var arr = 'abcdaabc';
2 //判断一个字符在字符串中出现的次数
3 var a = (arr.split('d')).length-1;
4 console.log(a) // 1

第三题:编写一个函数unique(arr),返回一个去除数组内重复的元素的数组 例如 unique([0,1,'1','1',2]) ==> [0,1,'1',2]

1 //编写一个函数unique(arr),返回一个去除数组内重复的元素的数组 例如 unique([0,1,'1','1',2]) ==> [0,1,'1',2]
2 function unique(arr){
3     return Array.from(new Set(arr));
4 }
5    
6 console.log(unique(arr)); // [0,1,'1',2]
7 
8 const  unique1 = [...new Set(arr)];
9 console.log(unique1)   // [0,1,'1',2]

1 //数组去重
2 var arr = [1,3,1,4,1,5,6,3,1,2];
3 
4 Array.from(new Set(arr));//[1, 3, 4, 5, 6, 2]
5 arr.filter(function (element, index, self) {
6     return self.indexOf(element) === index;
7 });

第四题:

请编写一个JavaScript函数parseQueryString,他的用途是把URL参数解析为一个对象,如:var url=“http://witmax.cn/index.php?key0=0&key1=1&key2=2”;
 1 //请编写一个JavaScript函数parseQueryString,他的用途是把URL参数解析为一个对象,如:var url=“http://witmax.cn/index.php?key0=0&key1=1&key2=2”;
 2 
 3 function parseQueryString(url) {
 4     var result = {};
 5     var arr = url.split("?");
 6     if (arr.length <= 1) {
 7         return result;
 8     } else {
 9         arr = arr[1].split("&");
10         arr.forEach(item => {
11             let a = item.split('=')
12             result[a[0]] = a[1]
13         })
14         return result;
15     }
16 }
17 
18 var url = "http://witmax.cn/index.php?key0=0&key1=1&key2=2";
19 var ps = parseQueryString(url);
20 console.log(ps)  //{key0: "0", key1: "1", key2: "2"}
原文地址:https://www.cnblogs.com/chengxuyuana/p/10538309.html