-xlx
1、判断一个字符串中出现次数最多的字符,并统计次数
/**
* 最终返回一个对象
* {
* a:3,个数
* b:1
* }
*/
var str = 'fdsfdfsdfwersdwwwwwxfsdfffff'
function fUnique(str){
// 创建一个对象
var obj = {};
for(var i=0;i<str.length;i++){
// 如果没有,添加一个并且赋值为1
var key = str[i]
if(!obj[key]){
obj[key]=1;
}else{
obj[key]+=1
}
}
return obj;
}
const result = fUnique(str);
console.log(result);
结果:
image.png
2、请编写一个javasctipt函数,解析地址参数
const url =
"https://www.baidu.com/s?wd=%E7%BD%91%E6%98%93%E4%BA%91%E8%AF%BE%E5%A0%82&rsv_spt=1&rsv_iqid=0xa72c667700064b52&issp=1&f=8&rsv_bp=1&rsv_idx=2&ie=utf-8&tn=baiduhome_pg&rsv_enter=1&rsv_dl=tb&rsv_sug3=28&rsv_sug1=24&rsv_sug7=101&rsv_sug2=0&rsv_btype=i&inputT=10095&rsv_sug4=13293";
function fParseQueryString(url) {
const result = {};
var urls = url.split("?");
const arr = urls[1].split("&");
for (let i = 0; i < arr.length; i++) {
let brr = arr[i].split("=");
result[brr[0]] = brr[1];
}
return result;
}
console.log(fParseQueryString(url));
结果;
image.png
3、new具体做了什么事
// new到底做了什么
/**
* 1、创建一个对象 new Object()
* 2、原型赋值[指向共同一个圆形对象]
* 对象.__proto__ = Fun.prototype
* 3、改变this指向
* fun.call(obj)
*/
function Fun (){
// this.name = "张三"
}
Fun.prototype = {
name:'李四',
run:function(){
}
}
const obj = new Fun();
console.log(obj.name);
4、分别打印什么
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
function Foo() {
getName = function () {
console.log(1);
};
return this;
}
Foo.getName = function () {
console.log(2);
};
Foo.prototype.getName = function () {
console.log(3);
};
var getName = function () {
console.log(4);
};
function getName() {
console.log(5);
}
Foo.getName(); //2
getName(); //4
Foo().getName(); //1
getName(); //1
new Foo().getName(); //3
</script>
</body>
</html>
网友评论