1,判断字符串是否是这样组成的,第一个必须是字母,后面可以是字母、数字、下划线,总长度为5-20
varreg=/^[a-zA-Z][a-zA-Z_0-9]{4,19}$/;
reg.test("a1a__a1a__a1a__a1a__");
2,截取字符串abcdefg的efg
varstr="abcdefg";
if(/efg/.test(str)){
varefg=str.substr(str.indexOf("efg"),3);
alert(efg);
}
3,判断一个字符串中出现次数最多的字符,统计这个次数
//将字符串的字符保存在一个hashtable中,key是字符,value是这个字符出现的次数
varstr="abcdefgaddda";
varobj={};
for(vari=0,l=str.length;ilt;l;i++){
varkey=str[i];
if(!obj[key]){
obj[key]=1;
}else{
obj[key]++;
}
}
/*遍历这个hashtable,获取value最大的key和value*/
varmax=-1;
varmax_key="";
varkey;
for(keyinobj){
if(maxobj[key]){
max=obj[key];
max_key=key;
}
}
alert("max:"+max+"max_key:"+max_key);
4,编写一个方法求一个字符串的字节长度
假设:
一个英文字符占用一个字节,一个中文字符占用两个字节
functionGetBytes(str){
varlen=str.length;
varbytes=len;
for(vari=0;ilen;i++){
if(str.charCodeAt(i))bytes++;
}
returnbytes;
}
alert(GetBytes("你好,as"));
5,编写一个方法去掉一个数组的重复元素
vararr=[1,1,2,3,3,2,1];
Array.prototype.unique=function(){
varret=[];
varo={};
varlen=this.length;
for(vari=0;ilen;i++){
varv=this[i];
if(!o[v]){
o[v]=1;
ret.push(v);
}
}
returnret;
};
alert(arr.unique());
6,写出3个使用this的典型应用
(1)在html元素事件属性中使用,如
inputtype=”button”onclick=”showInfo(this);”value=”点击一下”/
(2)构造函数
functionAnimal(name,color){
this.name=name;
this.color=color;
}
(3)
inputtype="button"id="text"value="点击一下"/
scripttype="text/JavaScript"
varbtn=document.getElementById("text");
btn.onclick=function(){
alert(this.value);//此处的this是按钮元素
}
/script
(4)CSSexpression表达式中使用this关键字
tablewidth="px"height="px"
tr
td
divstyle="width:expression(this.parentNode.width);"divelement/div
/td
/tr
/table