騰訊web前端開發工程師筆試題

才智咖 人氣:3.24W

1、 JS如何得到HTTP的請求頭資訊和返回的頭資訊?

騰訊web前端開發工程師筆試題

Javascript中跟response header有關的就兩個方法:

getResponseHeader 從響應資訊中獲取指定的http頭 語法

strValue =

esponseHeader(bstrHeader);

getAllResponseHeaders 獲取響應的所有http頭 語法

strValue =

llResponseHeaders();

需要注意的是,通常,在IE下不能完整的獲取header報頭資料,只能取到如下header資料:

X-Powered-By:

X-UA-Compatible:

Keep-Alive:

Transfer-Encoding:

Content-Type:

比如你要獲取時間戳,在IE下必須做些特殊處理,需要在後端設定一下,關閉快取:

2、 將10進位制的數302轉為二進位制。

十進位制轉二進位制的原理是:

用2輾轉相除至結果為1

將餘數和最後的1從下向上倒序寫 就是結果

例如302

302/2 = 151 餘0

151/2 = 75 餘1

75/2 = 37 餘1

37/2 = 18 餘1

18/2 = 9 餘0

9/2 = 4 餘1

4/2 = 2 餘0

2/2 = 1 餘0

故二進位制為100101110

所以程式可以寫成這樣:

var a=302;

var str=””;

while(a>1){

str = a%2 + str;

a = parseInt(a/2);

}

str = a+str;

3、 js中運算子的優先順序(此非原題,為原理題)

運算子

描述

. [] ()

欄位訪問、陣列下標、函式呼叫以及表示式分組

++ — – ~ ! delete new typeof void

一元運算子、返回資料型別、物件建立、未定義值

* / %

乘法、除法、取模

+ – +

加法、減法、字串連線

<< >> >>>

移位

< <= > >= instanceof

小於、小於等於、大於、大於等於、instanceof

== != === !==

等於、不等於、嚴格相等、非嚴格相等

&

按位與

^

按位異或

|

按位或

&&

邏輯與

||

邏輯或

?:

條件

= oP=

賦值、運算賦值

,

多重求值

4、 typeof(null)=______

答案為object

5、 JS中給全部都是數字元素的陣列排序的原生方法是___sort_______,其中使用的是__冒泡__排序方法。

例如:(function(a,b){return a-b;})

詳細說明訪問網站:

6、 NaN * 6=__NaN____

7、 JS中呼叫某個函式之前,如何取得該函式最多可以傳遞多少個引數?該函式被呼叫時,如果知道傳了多少個引數過來?

假設函式名為fun,那個th就是它最多能接受的引數個數;

在fun函式裡面,arguments就是用陣列裝著呼叫時傳過來的所有引數,因此th就是已經傳遞過來的引數個數;

如:

function needTwoPara(p1,p2){

var a=arguments;

var result=’我是個需要’+th+’個引數的函式n’

+’您輸入的'引數的個數為:’+th+’n’

for(var i=0, len = th; i < len; i++){

result=result+’第’+(i+1)+’個引數為:’+a[i]+’n’

}

result+=’以上是用arguments來獲得引數n’;

result+=’下面用變數來獲得引數:n’;

result+=’p1:’+p1+’n’;

result+=’p2:’+p2+’n’;

alert(result);

}

alert(th);

needTwoPara(‘ooooo’);

執行結果為:

2

我是個需要2個引數的函式

您輸入的引數的個數為:1

第1個引數為:ooooo

以上是用arguments來獲得引數

下面用變數來獲得引數:

p1:ooooo

p2:undefined

8、 軟體HttpWatch的作用?