js必会知识点

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>2015年JS笔试题目</title>
</head>
<body>
<a href="#"> 第一个链接</a><br/>
<a href="#"> 第二个链接</a><br/>
<a href="#"> 第三个链接</a><br/>
<a href="#"> 第四个链接</a><br/>
<a href="#"> 第五个链接</a><br/>
<script type="text/javascript">
var length =3;
var  f1= (function(){
var length =5;
function fn(){
console.log(this.length);
}
var obj ={
length:5,
method:function(fn){
fn();
arguments[0]();
}
}
obj.method(fn,1);
//result:10,2
})();

/
var f2 = (function(){
function fn(a){
console.log(a);
var a=2;
function a(){}
console.log(a);
}
fn(1);
})();
function内的变量才是局部变量/
var f3 = (function(){
var f =true;
if(f === true){
var a =10;
}
function fn(){
var b =20;
c =30;
}
fn();
console.log(a);
//console.log(b);
console.log(c);
})();
/
var f4 =(function(){
if('a' in window){
var a =10;
}
//alert(a);
//放到外面就是10,闭包环境下不是10而是undefined
})();
/
var f5 = (function(){
var  a =10;
a.pro =10;
console.log(a.pro+10);


var s ="hello";
s.pro =" world";
console.log(s.pro + s);
})();
//函数声明 优先变量申明///
console.log(typeof fn);
function fn(){
var fn =10;
}
//字符串求出现最多字符并统计个数///
var  str = "aaabbbaaaaabbbvccccbbaabbbbbbbbbbbbbb";
//正则表达式求解
var  a = str.split('');
console.log(a);//["a", "a", "a", "b", "b", "b", "a", "a", "a", "a", "a", "b", "b", "b", "v", "c", "c", "c", "c", "b", "b", "a", "a", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b"]
a.sort();
console.log(a);//["a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "c", "c", "c", "c", "v"]
s = a.join("");
console.log(s);//aaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbccccv
var patt = /(\w)\1*/g;
var ss = s.match(patt);
console.log(ss);//["aaaaaaaaaa", "bbbbbbbbbbbbbbbbbbbbbb", "cccc", "v"]
ss.sort(function(a,b){
return a.length < b.length;
})
console.log(ss);//["bbbbbbbbbbbbbbbbbbbbbb", "aaaaaaaaaa", "cccc", "v"]
console.log(ss[0][0]+":"+ss[0].length);
//hash table 方式
var  str = "aaabbbaaaaabbbvccccbbaabbbbbbbbbbbbbb";
var obj ={};
var maxn =-1;
var letter;
for(i =0;i<str.length;i++){
console.log(obj[str[i]]);
if(obj[str[i]]){
obj[str[i]]++;
if(obj[str[i]] > maxn){
maxn = obj[str[i]];
letter = s[i];
}
}else{
obj[str[i]] =1;
if(obj[str[i]] >maxn){
maxn= obj[str[i]];
letter =str[i];
}
}
}
console.log(letter+":"+maxn);
/经典闭包///
//dom污染法
/*var  lis = document.links;//[a,a,a,a,a]
console.log(lis);
for(i =0 ; i <lis.length ;i++){
lis[i].index = i;
lis[i].onclick = function(){
alert(this.index);
}
}*/
//闭包
var  lis = document.links;
for(var i =0;i <lis.length;i++){
(function(i){
console.log("i:"+i);
lis[i].onclick = function(){
alert(i+1);
}
})(i);
}
/url解析split///
var url ="http://www.xxx.com/index.php?key0=0&key1=1&key2=2";
function parseQueryString(url){
var obj ={};
var a = url.split("?");
if(a.length ==1) return obj;
var b = a[1].split("&");//[key0=0,key1=1,key2=2]
for(var i =0;i<b.length;i++){
var c = b[i].split("=");
obj[c[0]] =c[1];
}
console.log("json:"+JSON.stringify(obj));
}

parseQueryString(url);

//json:{"key0":"0","key1":"1","key2":"2"}

</script>
</body>
</html>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值