四道腾讯的javascript面试题
2014-03-29 21:34
471 查看
今天整理自己的文件夹时,发现了曾经面试腾讯实习生时的被问挂了的面试题,我将它们整理好了供大家借鉴。当时要求的是手写代码。汗啊,我那时弱爆了!
1,将给定数组转换为一个随机数组
2,统计给定字符串里的各个字符出现的次数
3,判断js代码加载完成
4,实现三列布局:
开心一刻:
1,将给定数组转换为一个随机数组
Array.prototype.shuffle=function(){ var resultArr=[]; var len=this.length; while(len){ var _index=parseInt(Math.random()*len); resultArr.push(this[_index]);//每次取得数组中一个字符,放到新的数组中 for(var i=_index;i<len;i++){//后面的向前移动 this[i]=this[i+1]; } len--; } return resultArr; } var a=new Array('1','2','3','4','5','6'); alert(a.shuffle());
2,统计给定字符串里的各个字符出现的次数
var a="aassdddffffffffggghhhjjjkkkll"; function counts(str){ var obj={}; for(var i=0;i<str.length;i++){ if(!obj[str[i]]){ obj[str[i]]=1; }else{ obj[str[i]]++; } } return obj; } console.log(counts(a));//Object {a: 2, s: 2, d: 3, f: 8, g: 3…}
3,判断js代码加载完成
function dynamicLoad() { var _doc=document.getElementsByTagName('head')[0]; var script=document.createElement('script'); script.setAttribute('type','text/javascript'); script.setAttribute('src','jquery.js'); _doc.appendChild(script); //非ie ie, script.onload=script.onreadystatechange=function(){ //非ie ie,该值不确定 if(!this.readyState||this.readyState=='loaded'||this.readyState=='complete'){ alert('done'); script.onload=script.onreadystatechange=null; } } }
4,实现三列布局:
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta charset="utf-8"/> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <style> #side { background: #99FF99; height: 300px; width: 120px; float: left; } #main { background: #99FFFF; height: 300px; width: auto; margin-left: 120px; } #main-left{ background:red;float:left; width:200px; height:300px;} #main-right{ margin-left:200px; height:300px; width:auto;} </style> </head> <body> <div id="side">此处为左边部分</div> <div id="main"> <div id="main-left">右边的左列</div> <div id="main-right">右边的右列</div> </div> </body> </html>
开心一刻:
相关文章推荐
- js实现html页面滚动条向下拉到一定的程度时,某个div就固定在顶部,向上拉时返回原位置。
- 1028: [JSOI2007]麻将 - BZOJ
- js基础知识
- JavaScript的MVC模式向导
- grunt 检测js配置
- Js New一个函数和直接调用的区别
- grunt 一个目录下所有的js文件压缩 配置收藏
- JavaScript刷新页面
- Web编程学习一: 使用JSF来创建Web应用
- Extjs4.2 grid Store 删除问题
- javascript中showModalDialog和showModelessDialog的使用
- 自定义jsp标签入门
- 有些jsp显示multiple annotations found at this line
- js实现快速排序
- 编写规范的javascript
- 实现简单的搜索引擎
- express3.x中使用某个layout.ejs及<%-code%>标签的使用
- V8 Javascript 引擎设计理念
- js、jq获取对象位置 对象宽高
- JavaScript的核心