腾讯前端题面试题(一)及答案

来源:互联网 发布:设计app软件多少钱 编辑:程序博客网 时间:2024/05/17 00:58

眼看暑假快要结束了,忙碌的面试准备马上要开始了,加油,gogofighting


1. 请实现,鼠标点击页面中的任意标签,alert该标签的名称.(注意兼容性)

关键点:target.tagName 组织冒泡事件:e.stopPropagation 或return false;


2.请指出一下代码的性能问题,并进行优化.

var info="腾讯拍拍网(www.paipai.com)是腾讯旗下知名电子商务网站。";       info +="拍拍网于2005年9月12日上线发布,";       info +="2006年3月13日宣布正式运营,";       info +="是目前国内第二大电子商务平台。";       info=info.split(",");       for(var i=0; i<info.length; i++)        {           alert(info[i]);        }  

个人观点: 字符串的累加,+=会先创建一个临时字符串,相加后再赋值给info,每个字符串都会使用一个小的内存片段,过多的内存片段会影响性能。另外,建议将数组的长度缓存到临时变量里面


3.请给出异步加载js方案,不少于两种。

1.defer属性 只支持IE 2.async属性  HTML5 3.创建script节点


4.请写出绑定事件的方法,不少于两种。

1.$dom.bind("click", function(){}); 2.$dom.click(function(){});


5.请设计一套方案,用于确保页面中加载完全。

在回调里继续加载下一个js直到js加载完

function loadScript(url, callback){   var script = document.createElement_x("script")   script.type = "text/javascript";   if (script.readyState){ //IE     script.onreadystatechange = function(){       if (script.readyState == "loaded" || script.readyState == "complete"){         script.onreadystatechange = null;         callback();       }     };   } else { //Others: Firefox, Safari, Chrome, and Opera     script.onload = function(){     callback();   }; } script.src = url; document.body.appendChild(script); } 

6.请优化某网页的加载速度。

 1) 静态资源使用cdn加速

 2) 使用CSS精灵技术:所有Tenerife图片都是一张大图片,使用CSS控制坐标

 3) 合并并且压缩js/css

 4) 页面懒加载(类似于音悦台,淘宝)

 5) 使用giz压缩文本和图片

 7) 使用 Progressive JPEGs:在装入图像时,开始只显示一个模糊的图像,随着数据的装入,图像逐步变得清晰.

 7.对string对象进行扩展,使其具有删除前后空格的方法。


 String.prototype.trim=function(){      return this.replace(/(^\s*)|(\s*$)/g, "");   }


8.完成一个正则表达式,验证用户输入是否身份证号码。

 /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/


0 0
原创粉丝点击