腾讯前端笔试题整理

1.js中“5”+4=?

答案:“54”

2.js中void(0)=?

答案:undefined

评:这个在a的href 中可以使用javascript:void(0);

如果使用href=”#”,包含了一个位置信息.默认的锚是#top,也就是网页的上端,当连续快速点击此链接时会导致浏览器巨慢甚至崩溃。
javascript中void是一个操作符,该操作符指定要计算一个表达式但是不返回值。 
javascript:;好些,javascript:void(0);据说某些情况下有浏览器兼容bug。(此点bug我也不知道什么时候能出现,知道的童鞋请指教)。

3.js中NaN*4=?

答案:NaN

评:NaN是强制类型转换,表示非数字,任何类型的数(包括null ,undefined,number)与NaN做运算,结果都是NaN

但是: string类型的与NaN做“+” 运算则转换为string ,而做"*"运算,则结果为NaN.

eg :

"test" + NaN = "testNaN"
"test"  * NaN = NaN

4.js中null*4.5=?

答案:0

评:用typeof null 居然是object,不是很明白。。。下次再详解

注 : string + 任何类型 = string类型

5.js中alert(5*015===5.075)结果?原因?

答 :false啊,这题怪怪的,估计写错了

6.js中13>>2=? -13>>2=?

答: 13 >> 2 = 3 , -13 >> 2 = -4

评: 左移(<<) 和 右移(>>) ,左移乘以2的次幂,右移除以2的次幂(原则都是往小里算)

7.js中13|5=? 13&5=?

答:13 | 5 = 13 ,13 & 5 = 5;

评:&&与||都有短路左移,&& 优先级高于 ||。

a() && b() :如果执行a()后返回true,则执行b()并返回b的值;如果执行a()后返回false,则整个表达式返回a()的值,b()不执行;
a() || b() :如果执行a()后返回true,则整个表达式返回a()的值,b()不执行;如果执行a()后返回false,则执行b()并返回b()的值;

8.js中怎么获取当前日期的月份

答: new Date().getMonth() + 1;

评: js中Date对象的考察,另外要注意的是getMonth()函数起始值是0,所以要获取当前的月份数需要+1

Date :

Date() 返回当日的日期和时间。
getDate() 从 Date 对象返回一个月中的某一天 (1 ~ 31)。
getDay() 从 Date 对象返回一周中的某一天 (0 ~ 6)。
getMonth() 从 Date 对象返回月份 (0 ~ 11)。
getFullYear() 从 Date 对象以四位数字返回年份。
getYear() 请使用 getFullYear() 方法代替。
getHours() 返回 Date 对象的小时 (0 ~ 23)。
getMinutes() 返回 Date 对象的分钟 (0 ~ 59)。
getSeconds() 返回 Date 对象的秒数 (0 ~ 59)。
getMilliseconds() 返回 Date 对象的毫秒(0 ~ 999)。
getTime() 返回 1970 年 1 月 1 日至今的毫秒数。
parse() 返回1970年1月1日午夜到指定日期(字符串)的毫秒数。
setDate() 设置 Date 对象中月的某一天 (1 ~ 31)。
setMonth() 设置 Date 对象中月份 (0 ~ 11)。
setFullYear() 设置 Date 对象中的年份(四位数字)。
setHours() 设置 Date 对象中的小时 (0 ~ 23)。
setMinutes() 设置 Date 对象中的分钟 (0 ~ 59)。
setSeconds() 设置 Date 对象中的秒钟 (0 ~ 59)。
setMilliseconds() 设置 Date 对象中的毫秒 (0 ~ 999)。
setTime() 以毫秒设置 Date 对象。
toString() 把 Date 对象转换为字符串。
toTimeString() 把 Date 对象的时间部分转换为字符串。
toDateString() 把 Date 对象的日期部分转换为字符串。
toLocaleString() 根据本地时间格式,把 Date 对象转换为字符串。
toLocaleTimeString() 根据本地时间格式,把 Date 对象的时间部分转换为字符串。
toLocaleDateString() 根据本地时n间格式,把 Date 对象的日期部分转换为字符串。
valueOf() 返回 Date 对象的原始值。

9.js中数组排序方法是?该方法实现了?的排序算法

答: sort,利用的是冒泡排序的思想

评: sort是带参数的

eg : var a = [ 2, 10, 5, 34];

a.sort();   //结果是:[10, 2, 34, 5]

a.sort(function(n1,n2) { return n1 -n2 } ); //从小到大排序,结果是[2,5,10,34]

a.sort(function(n1,n2) { return n2 - n1 }) ; //从打到小的排序,结果是[34,10,5,2]

a.reverse();  //reverse是将数组反置

10.js中怎么判断chrome浏览器?

答:

window.navigator.userAgent.search("Chrome") > 0  ? true : false; 

评:考察navigator对象

属性 描述
appCodeName 返回浏览器的代码名。
appMinorVersion 返回浏览器的次级版本。
appName 返回浏览器的名称。
appVersion 返回浏览器的平台和版本信息。
browserLanguage 返回当前浏览器的语言。
cookieEnabled 返回指明浏览器中是否启用 cookie 的布尔值。
cpuClass 返回浏览器系统的 CPU 等级。
onLine 返回指明系统是否处于脱机模式的布尔值。
platform 返回运行浏览器的操作系统平台。
systemLanguage 返回 OS 使用的默认语言。
userAgent 返回由客户机发送服务器的 user-agent 头部的值。
userLanguage 返回 OS 的自然语言设置。

 

11.js中var b=”hello”;a=b; 怎么显示出a的值(貌似这题最简单了)

答: 不明白这题考的是什么

12.根据以下xml请写出对应的json(原题写成一行,这里我改成标准xml的显示了)

答:要求xml,虽然不是很会,但是只要将"="左边的当成key值,"="右边的当成value就好了。

13.js中怎么把十进制数123转化成二进制数?

答:

function toBinary ( val )
{
    var binary = "";
    do
     {
         binary = val % 2 + binary ;
         val =  parseInt ( val / 2 );
    }
    while ( val > 1)
    binary = val + binary;
    return parseInt(binary)
}

14.js中怎么才能按下回车键可以提交

答:

document.onkeydown = function( ev )
{
   var event = ev || event ;
   if ( event.keyCode == 13 )
   {
      //do something
   }
}  

评: 键盘事件相应,当然还有事件对象event的兼容

  编程题

1.js中var s=”tencent is sb”,编写js使其变成tencent1 is2 sb3

答:

function change ( str )
{
    var arr = str.split(" ");
    var resultArr =[];
    for ( var i = 0 ; i < arr.length ; i++)
    {
        resultArr.push( arr[i] + (i+1) + "");
    }
  return  resultArr.join(" ");
}

2.编写js的类,使其拥有public和private类型的属性和方法

//首先声明,js中没有类这个概念哈,用的只是构造混合模式下的:构造函数+prototype形式
//构造函数中的属性和方法都是私有的
function Test ( args1, args2,args3)
{
   this.args1 = args1;
   this.args2 = args2;
   this.args3 = args3;
   this.fn = function() {}
}
Test.prototype.args4 = "我是共有的";
Test.prototype.fn = function() {
   //我是公有的方法
}

//多写两句关于继承Test2继承于Testfunction Test2(arg1,arg2,arg3 ,arg4){
  Test.call(this, arg1,arg2,arg3);    this.arg4 = arg4; //子类的新属性

}Test.prototype = new Test();

3.给定http://id.qq.com/125125,请说出请求头,相关的报文信息(想想httpwatch工具抓包的内容)

答:

请求头部:

Host : id.qq.com

Origin : http:// id.qq.com

Referer : http://id.qq.com/125125

评:

请求头部

请求头部由关键字/值对组成,每行一对,关键字和值用英文冒号“:”分隔。请求头部通知服务器有关于客户端请求的信息,典型的请求头有:

User-Agent:产生请求的浏览器类型。

Accept:客户端可识别的内容类型列表。

Host:请求的主机名,允许多个域名同处一个IP地址,即虚拟主机。

Accept: application/json, text/javascript, */*; q=0.01
Accept-Encoding: gzip, deflate
Accept-Language:zh-CN,zh;q=0.8
Connection:keep-alive
Content-Length:0
Content-Type:application/json
Cookie:__gads=ID=ed1fcec11020e105:T=1441114370:S=ALNI_MYF-l5tzoS-I5CxTgPc0FR27707oA; .CNBlogsCookie=C66DF5F61539E6BD6A022586096B07166B9F2EFEF90D79352762C8DC689B3AC27C253F040B3C6D0F21B85D48F26086A2DB70444AE8C38357FF076724428A34C956B06ECC48F70DAC52F397425A2BDC321A852B00; SyntaxHighlighter=javascript; _gat=1; _ga=GA1.2.317876818.1441114370; SERVERID=9b2e527de1fc6430919cfb3051ec3e6c|1441369787|1441369726
Host: i.cnblogs.com
Origin:http://i.cnblogs.com
Referer:http://i.cnblogs.com/EditPosts.aspx?postid=4781872&update=1
User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.155 Safari/537.36
X-Requested-With:XMLHttpRequest

HTTP响应也由三个部分组成,分别是:状态行、消息报头、响应正文。

Cache-Control:private, s-maxage=0
Connection:keep-alive
Content-Length:11
Content-Type:application/json; charset=utf-8
Date:Fri, 04 Sep 2015 12:29:47 GMT
Set-Cookie:SERVERID=9b2e527de1fc6430919cfb3051ec3e6c|1441369787|1441369726;Path=/
X-AspNet-Version:4.0.30319
X-AspNetMvc-Version:5.1
X-Frame-Options:SAMEORIGIN
X-Powered-By:ASP.NET
X-UA-Compatible:IE=10

4.说出一些常用的网络优化工具

答:论坛,QQ群,博客,友情链接平台,微博,邮箱

面试官问的题

1.css的样式在不同类型的浏览器之间的显示差异如何解决

2.在css中用一行css代码实现在不同类型的浏览器(如IE6,IE7,IE8)之间显示出不同的样式

3.页面上有左中右三列,左右两列列宽固定,中间列自适应,要求纸上手写代码

时间: 2024-12-19 23:42:35

腾讯前端笔试题整理的相关文章

js实现蛇形矩阵-腾讯前端笔试题

参加腾讯前端实习生笔试,真的是被虐了千百遍,除了一条js程序题,其他半点前端都没有,都是考算法,计算机原理,数据结构.下面贴上腾讯笔试最后三大条中的一条,实现一个蛇形矩阵的输出.蛇形矩阵的什么样这里我就不多说了. var lineCount=0; var numCount=1; var lineLog=1; var doubleArray=[]; var result="result:"; var lineCountGet; function index (n) { ArrayMake

腾讯前端笔试题及答案

简答题 1.js中"5"+4=? 答案:54 2.js中void(0)=? 答案:undefined 3.js中NaN*4=? 答案:NaN 4.js中null*4.5=? 答案:0 5.js中alert(5*015===5.075) 答案:false,结果不一样. 6.js中13>>2=? -13>>2=? 答案:3 ,-4 ,除以4,然后向下取整. 7.js中13|5=? 13&5=? 答案:按位或:13,按位与:5. 8.js中怎么获取当前日期的月

前端笔试题汇总整理

一.Js对象 1.如何根据逗号分隔的字符串创建数组呢?请为下面的字符串创建一个数组,并访问第三个元素:"cats,dogs,birds,horses" 知识点:数组和字符串的转换.考察split() 方法.把一个字符串分割成字符串数组(将字符串按某个字符切割成若干个字符串,并以数组形式返回) var animalString="cats,dogs,birds,horses"; var animalArray=animalString.split(",&qu

&lt;转&gt;网易2016实习生前端笔试题部分总结

网易2016实习生前端笔试题部分总结 原文地址:http://www.cnblogs.com/venoral/p/5325202.html 这只是部分题,答案为个人观点如有错误欢迎指出,感觉考点都挺基础,但是很注重考细节方面,通过整理也知道自己在CSS3和HTML5,网络知识等方面的不足还是得多学多练多思考.攒rp,希望自己在明天360笔试中能轻松答过~ css 1.多选 //HTML <p>很长的一段文字,很长的一段文字,很长的一段文字,特别长的文字</p> //CSS p{ w

也许你需要点实用的-Web前端笔试题

之前发的一篇博客里没有附上答案,现在有空整理了下发出来,希望能帮助到正在找工作的你,还是那句话:技术只有自己真正理解了才是自己的东西,共勉. Web前端笔试题 Html+css 1.对WEB标准以及w3c的理解与认识. 标签闭合,标签小写,不乱嵌套:提高搜索机器人的搜索几率: 使用外联的css和js,结构行为表现的分离:文件下载与页面加载速度更快,内容能被更广泛的设备所访问: 更少的代码和组件:容易维护,改版方便,不需要变动页面内容,提供打印版本而不需要复制内容,提高网站的易用性. 2.Xhtm

阿里2道前端笔试题+堆糖2道前端笔试题

阿里前端笔试题 1.一个表格HTML代码如下 <table id="table1"> <tbody> <tr><td>1</td><td><button>Delete</button></td></tr> <tr><td>2</td><td><button>Delete</button></

经典的阿里前端笔试题

1 请说明下面各种情况的执行结果,并注明产生对应结果的理由. function doSomething() { alert(this); } ① element.onclick = doSomething,点击element元素后. ② element.onclick = function() {doSomething()}, 点击element元素后. ③ 直接执行doSomething(). 参考答案: 1.element:调用执行时直接指向事件元素. 2.window:函数调用中的 thi

嵌入式c笔试题(整理)

嵌入式c笔试题 (2012-03-24 22:36) 预处理器(Preprocessor)1. 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)#define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL我在这想看到几件事情:1). #define 语法的基本知识(例如:不能以分号结束,括号的使用,等等)2). 懂得预处理器将为你计算常数表达式的值,因此,直接写出你是如何计算一年中有多少秒而不是计算出实际的值,是更清晰而没有代价的

js+html+css实现简单页面交互功能(2015知乎前端笔试题)http://v.youku.com/v_show/id_XMTI0ODQ5NTAyOA==.html?from=y1.7-1.2

js+html+css实现简单页面交互功能(2015知乎前端笔试题) http://v.youku.com/v_show/id_XMTI0ODQ5NTAyOA==.html?from=y1.7-1.2 密码:hellozhihu