您的位置:首页 > Web前端

前端一些笔试问题

2010-12-13 18:54 218 查看
1.JavaScript深度克隆

function Object.prototype.cloneObj()
{
  function NEWOBJECT(){};
  NEWOBJECT. prototype = this;
  var anObj = new NEWOBJECT();
  for ( var ele in anObj )
  {
     if ( typeof anObj[ele] == “object” ) return anObj[ele]. cloneObj();
  }
  return anObj;
}


2.编写一个方法 求一个字符串的字节长度

new function(s) {
if(!arguments.length||!s) return null;
if(""==s) return 0;
var l=0;
for(var i=0;i<s.length;i++) {
if(s.charCodeAt(i)>255) l+=2;
else l++;
}
alert(l);
}("hello你好,我好,大家好!world!");


3.如何控制alert中的换行

alert("hello\nworld");


4.解释document.getElementById("ElementID").style.fontSize="1.5em"

em是个相对单位

5.按照格式 xxxx年xx月xx日xx时xx分xx秒动态显示时间 要求不足10的补0

new function() {
with(new Date()) {
var t=function(a){return a<10?"0"+a:a;}
alert(getFullYear()+"年"+t(getMonth()+1)+"月"+t(getDate())+"日"+t(getHours())+"时"+t(getMinutes())+"分"+t(getSeconds())+"秒");
}
}


6.编写一个方法 去掉一个数组的重复元素

Array.prototype.strip=function() {
if(this.length<2) return [this[0]]||[];
var arr=[];
for(var i=0;i<this.length;i++) {
arr.push(this.splice(i--,1));
for(var j=0;j<this.length;j++) {
if(this[j]==arr[arr.length-1]) {
this.splice(j--,1);
}
}
}
return arr;
}
var arr=["abc",85,"abc",85,8,8,1,2,5,4,7,8];
alert(arr.strip());


7.算出字符串中出现次数最多的字符是什么,出现了多少次

var str ="adadfdfseffserfefsefseeffffftsdg"; //命名一个变量放置给出的字符串
var maxLength = 0; //命名一个变量放置字母出现的最高次数并初始化为0
var result = ''; //命名一个变量放置结果输入

while( str != '' ){ //循环迭代开始,并判断字符串是否为空
oldStr = str; //将原始的字符串变量赋值给新变量
getStr = str.substr(0,1); //用字符串的substr的方法得到第一个字符(首字母)
eval("str = str.replace(/"+getStr+"/g,'')"); //详细如补充

if( oldStr.length-str.length > maxLength )
{ //判断原始的字符串的长度减去替代后字符串长度是否大于之前出现的最大的字符串长度
maxLength = oldStr.length-str.length; //两字符串长度相减得到最大的字符串长度
result = getStr + "=" + maxLength //返回最大的字符串结果(字母、出现次数)
}
}

alert(result) //弹出结果


8.用脚本写去除字符串的前后空格

String.prototype.trim = function(){
var str = this.replace(/^\s+/,""),
end = str.length-1;
ws = /\s/;
while(ws.test(str.charAt(end))){
end--;
}
return str.slice(0, end+1);
}


9.判断字符串是否是这样组成的,第一个必须是字母,后面可以是字母、数字、下划线,总长度为5-20

var c = /^[a-z|A-Z]{1}[\w]{4,19}/;


10.防止表单重复提交

11.按要求写一个简单的ajax示例
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: