2019年京東前端工程師面試題及解答

1.如下()函數不是jQuery內置的與AJAX相關的函數。javascript

A、$.ajax()css

B、$.get()html

C、$.post()前端

D、$.each()java

參考答案:Dandroid

答案解析:暫無css3

2.下面關於 HTML 的描述正確的一項是 ?web

A、HTML5 中的全部標籤都必須寫結束標籤ajax

B、DOCTYPE 的設置不會影響頁面的展現效果算法

C、HTML5 中的屬性名對大小寫敏感

D、HTML5 中可使用 data-* 自定義屬性

參考答案:D

答案解析:略

3.下列哪個是頁面載入時會觸發什麼Dom事件?

A、onchange

B、onaclive

C、onload

D、onresize

參考答案:C

答案解析:onload是加載完觸發,學習本身要理解到位,但作題,適當理解題目的不嚴謹。

4.關於bootstrap3的說法,錯誤的是

A、在windows上支持IE8

B、在IOS上支持Opera

C、在MAC OS及Windows上支持firefox

D、在IOS及android上都支持chrome

參考答案:B

答案解析:![](http://uploadfiles.nowcoder.com/images/20150517/601949\_1431846370797\_QQ截圖20150517150340.png)

5.標籤中,哪一個是表格邊框線的粗細?

A、bordercolor

B、border

C、cellspacing

D、cellpadding

參考答案:B

答案解析:

bordercolor表示邊框顏色;

cellspacing表示單元格之間的間隔;

cellpadding表示單元格內邊距。

6.若要在網頁中插入樣式表main.css,如下用法中正確的是()

A、<link rel="stylesheet" src="main.css" type="text/css">

B、<link rel="stylesheet" href="main.css" type="text/css">

C、<style rel="stylesheet" href="main.css" type="text/css">

D、<include rel="stylesheet" href="main.css" type="text/css">

參考答案:B

答案解析:略

7.獲取 input 節點的正確方法是( )

<form class="file" name="upload"> 

    <input id="file" name="file"></input></form>

HTML
A、document.querySelectorAll('file')[0]

B、document.getElementById('file')[0]

C、document.getElementByTagName('file')[0]

D、document.getElementsByClassName('file')[0]

參考答案:D

答案解析:全錯了 , fuc\*

8.下列哪些不屬於HTML input元素種類:

A、search

B、datetime

C、range

D、bool

參考答案:D

9.下面關於React說法錯誤的是

A、React DOM在渲染以前會默認過濾全部傳入的值

B、React DOM在渲染過程當中只會更新改變了的部分

C、直接經過賦值更新React組件狀態不會從新渲染組件,必須使用setState方法

D、JSX是JavaScript的一種語法擴展,React的使用依賴JSX

參考答案:D

答案解析:純React建立節點的話能夠用React.createElement,組件的話有ES6 class、createClass或stateless function三種建立方法(目前)

10.要去掉文本超連接的下劃線,下列正確的是()

A、a{underline:none}

B、a{ text-decoration:none}

C、a{ text-decoration:underline}

D、a{ decoration:no underline}

參考答案:B

11.獲取當前時間的JavaScript語句是()

A、new Now()

B、new Date()

C、GetTime()

D、now()

參考答案:B

答案解析:略。

12.閱讀以下代碼 , 請問 wrap 這個 div 的高度是多少?<

style type="text/css">

    .a, .b, .c {

        box-sizing: border-box;

        border: 1px solid;

    }

    .wrap {

        width: 250px;

    }

    .a {

        width: 100px;

        height: 100px;

        float: left;

    }

    .b {

        width: 100px;

        height: 50px;

        float: left;

    }

    .c {

        width: 100px;

        height: 100px;

        display: inline-block;

    }</style><span style="color: rgb(51,51,51);"> </span><span style="color: rgb(51,51,51);"> </span><div class="wrap">

    <div class="a">a</div>

    <div class="b">b</div>

    <div class="c">c</div></div> 

HTML
A、100px

B、150px

C、200px

D、250px

參考答案:B

答案解析:

由於他都是向左浮動他的寬度是200,因此wrap的高度應該是,B+C=150px 

13.在HTML語句中,用來表示標題的標籤是()

A、<h1>

B、<header>

C、<hr>

D、<heading>

參考答案:A

14.關於form標籤的說法,下列錯誤的是?()

A、<form> 標籤用於爲用戶輸入建立 HTML 表單

B、數據經過設置的action屬性提交到指定的位置

C、<form>標籤目前只支持GET和POST請求,且默認爲GET

D、<form>標籤的enctype屬性值默認爲multipart/form-data

參考答案:D

答案解析:enctype屬性的值由四個 application/x-www-form-urlencoded:在發送前編碼全部字符(默認) multipart/form-data:不對字符編碼。在使用包含文件上傳控件的表單時,必須使用該值。 text/plain:空格轉換爲 "+" 加號,但不對特殊字符編碼。 application/json:json格式的數

15.雖然不一樣的操做系統可能裝有不一樣的瀏覽器。可是這些瀏覽器都符合( )協議。

A、SNMP      

B、 HTTP  

C、HTML   

D、SMTP

參考答案:B

答案解析:

簡單網絡管理協議(SNMP),由一組網絡管理的標準組成,該協議可以支持網絡管理

系統,用以監測鏈接到網絡上的設備是否有任何引發管理上關注的狀況。

HTTP協議(HyperText Transfer Protocol,超文本傳輸協議)是客戶端瀏覽器或其餘程序與WEB服務器之間的應用層通訊協議。

超文本標記語言(HTML),標準通用標記語言下的一個應用,也是一種規範,一種標準,它經過標記符號來標記要顯示的網頁中的各個部分。網頁的本質就是超級文本標記語言,經過結合使用其餘的Web技術(如:腳本語言、公共網關接口、組件等),能夠創造出功能強大的網頁。

SMTP(Simple Mail Transfer Protocol,簡單郵件傳輸協議),它是一組用於由源地址到目的地址傳送郵件的規則,由它來控制信件的中轉方式。SMTP協議屬於TCP/IP協議簇,它幫助每臺計算機在發送或中轉信件時找到下一個目的地。

16.當在進行前端界面和後臺服務進行交互時,經常須要從後臺服務中獲取一組數據,現...

當在進行前端界面和後臺服務進行交互時,經常須要從後臺服務中獲取一組數據,如今須要將一組數據放入到數組中,正確的是( )

A、var arr=new array(); for(var i=0;i<data.length;i++){ arr.add(data[i]); }

B、var arr=new array(); for(var i=0;i<data.length;i++){ arr.push(data[i]); }

C、var arr=new array(); for(var i=0;i<data.length;i++){ arr.shift(data[i]); }

D、var arr=new array(); for(var i=0;i<data.length;i++){ arr.pop(data[i]); }

參考答案:B

17.關於嵌套列的用法,正確的是

A、<div class=「row」><br> <div class=「col-sm-1」>

B、<div class=「col-sm-1」><br><div class=「row」><br>

C、<div class=「row」><br> <div class=「container」><br> <div class=「col-xs-1」><br>

D、<div class=「container」><br> <div class=「row」><br> <div class=「col-xs-1」>

參考答案:D

答案解析:

Bootstrap 框架的網格系統工做原理以下:

1 、數據行 (.row) 必須包含在容器( .container )中,以便爲其賦予合適的對齊方式和內距 (padding) 。

如:

container ">

row ">

2 、在行 (.row) 中能夠添加列 (.column) ,但列數之和不能超過平分的總列數,好比 12 。

如:

4 ">

8 ">

3 、具體內容應當放置在列容器( column )以內,並且只有列( column )才能夠做爲行容器 (.row) 的直接子元素

4 、經過設置內距( padding )從而建立列與列之間的間距。而後經過爲第一列和最後一列設置負值的外距( margin )來抵消內距 (padding) 的影響

詳:

D(正確)

關於列的嵌套

Bootstrap 框架的網格系統還支持列的嵌套。你能夠在一個列中添加一個或者多個行( row )容器,而後在這個行容器中插入列。但在列容器中的行容器( row ),寬度爲 100% 時,就是當前外部列的寬度。

詳:

 

18.下面javascript的結果是:v

ar name = 'out'var person = {

    name: 'in', getName: function () {

        setTimeout(function () {

            console.log('a=' + this.name)

        }, 0)

    }}var getName = person.getName();getName();

JavaScript
A、a=in

B、a=out

C、in

D、out

參考答案:B

答案解析:這裏 this 指向了最外層windows。因此這裏值 a=out

19.請選擇產生粗體字的 HTML 標籤:

A、<bold>

B、<bb>

C、<b>

D、<bld>

參考答案:C

答案解析:html語言中加粗的標籤有和,或者使用css設置{font-weight:bold}****

20.CSRF攻擊描述錯誤的是?

A、CSRF須要有JavaScript代碼

B、CSRF攻擊惡意代碼位於第三方站點上

C、過濾用戶的輸入能夠防止惡意代碼注入到某個站點,可是它無阻止法惡意代碼在第三方站點上運行

D、CSRF符合同源策略

參考答案:A

答案解析:

XSS攻擊須要JavaScript代碼,CSRF攻擊不須要JavaScript代碼

21.冒泡排序算法在非有序的序列中時間複雜度是?( )

A、O(nlogn)

B、O(n^2)

C、O(n)

D、O(n^2logn)

參考答案:B

答案解析:

\### 時間複雜度

平均[時間複雜度](https://baike.baidu.com/item/%E6%97%B6%E9%97%B4%E5%A4%8D%E6%9D%82%E5%BA%A6)

[插入排序](https://baike.baidu.com/item/%E6%8F%92%E5%85%A5%E6%8E%92%E5%BA%8F) O(n^2)

[冒泡排序](https://baike.baidu.com/item/%E5%86%92%E6%B3%A1%E6%8E%92%E5%BA%8F) O(n^2)

[選擇排序](https://baike.baidu.com/item/%E9%80%89%E6%8B%A9%E6%8E%92%E5%BA%8F) O(n^2)

[快速排序](https://baike.baidu.com/item/%E5%BF%AB%E9%80%9F%E6%8E%92%E5%BA%8F) O(n log n)

[堆排序](https://baike.baidu.com/item/%E5%A0%86%E6%8E%92%E5%BA%8F) O(n log n)

[歸併排序](https://baike.baidu.com/item/%E5%BD%92%E5%B9%B6%E6%8E%92%E5%BA%8F) O(n log n)

[基數排序](https://baike.baidu.com/item/%E5%9F%BA%E6%95%B0%E6%8E%92%E5%BA%8F) O(n)

[希爾排序](https://baike.baidu.com/item/%E5%B8%8C%E5%B0%94%E6%8E%92%E5%BA%8F) O(n^1.25)

22.下列關於CSS樣式幾種定義方式的說法中錯誤的是( )。

A、單一選擇符方式即定義中只含有一個選擇符,這些選擇符一般是要定義樣式的HTML標籤,例如:body{background-color:#ffffff}就屬於單一選擇符方式。

B、使用類選擇符方式能夠將同一元素分類定義爲不一樣的樣式。類選擇符要以「.」號開頭,選擇符的名稱能夠由設計者定義。

C、CSS容許把相同屬性和值的選擇符組合起來,這些選擇符之間需用逗號隔開。例如,h1,h2,h3,h4,h5,h6{font-family:楷體}屬於選擇符組合方式。

D、td a:link{text-decoration:underline}該定義用於將網頁中全部表格中的單元格中的超連接文本設置下劃線,而對於單元格中的非超連接文本則不起做用,對頁面中表格之外的超連接文本一樣也起做用。

23.下列敘述中正確的是?

A、算法的效率只與問題的規模有關,而與數據的存儲結構無關

B、算法的時間複雜度是指執行算法所須要的計算工做量

C、數據的邏輯結構與存儲結構是一一對應的

D、算法的時間複雜度與空間複雜度必定相關

24.在css3中要使元素由一種樣式轉換成另外一種樣式,爲元素添加效果的屬性是?

A、animation

B、keyframes

C、flash

D、transform

25.HTTPS是一種安全的HTTP協議,它使用 ( ) 來發送和接收報文。

A、TCP的443端口 

B、UDP的443端口    

C、TCP 的80 端口 

D、UDP的80端口

2、多選題(共5題,每題5分)

1.關於柵格系統,哪些是正確的

A、col-sm-*

B、col-xs-*

C、col-md-*

D、col-lg-*.

2.HTTP request報文結構說法正確的有?

A、首行是Request-Line包括:請求方法,請求URI,協議版本,CRLF

B、首行以後是若干行請求頭,包括general-header,request-header或者entity-header,每一個一行以CRLF結束

C、請求頭和消息實體之間有一個CRLF分隔

D、根據實際請求須要可能包含一個消息實體

參考答案:A,B,C,D

答案解析:

rfc2616中進行了定義:
 

首行是Request-Line包括:請求方法,請求URI,協議版本,CRLF

首行以後是若干行請求頭,包括general-header,request-header或者entity-header,每一個一行以CRLF結束

請求頭和消息實體之間有一個CRLF分隔

根據實際請求須要可能包含一個消息實體 一個請求報文例子以下: GET /Protocols/rfc2616/rfc2616-sec5.html HTTP/1.1 Host: www.w3.org Connection: keep-alive Cache-Control: max-age=0 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,/;q=0.8 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.153 Safari/537.36 Referer: https://www.google.com.hk/ Accept-Encoding: gzip,deflate,sdch Accept-Language: zh-CN,zh;q=0.8,en;q=0.6 Cookie: authorstyle=yes If-None-Match: "2cc8-3e3073913b100" If-Modified-Since: Wed, 01 Sep 2004 13:24:52 GMT

  name=qiu&age=25

3.下列選項中哪些屬性是CSS3新增的?

A、box-sizing

B、transition

C、border-collapse

D、border-radius

4.在使用table表現數據時,有時候表現出來的會比本身實際設置的寬度要寬,爲此須要設置下面哪些屬性值?

A、cellpadding=」0″

B、padding:0

C、margin:0

D、cellspacing=」0″

5.如下關於sessionStorage,localStorage,cookie的說法錯誤的有?

A、 cookie會在請求時發送到服務器,做爲會話標識,服務器可修改cookie;web storage不會發送到服務器

B、 cookie有path概念,子路徑能夠訪問父路徑cookie,父路徑不能訪問子路徑cookie

C、共享:sessionStorage能共享,localStorage在同源文檔之間共享,cookie在同源且符合path規則的文檔之間共享

D、瀏覽器不能保存超過300個cookie,單個服務器不能超過20個,每一個cookie不能超過4k。web storage大小支持能達到5M

參考答案:C

答案解析:

sessionStorage,localStorage,cookie區別都會在瀏覽器端保存,有大小限制,同源限制cookie會在請求時發送到服務器,做爲會話標識,服務器可修改cookie;web storage不會發送到服務器cookie有path概念,子路徑能夠訪問父路徑cookie,父路徑不能訪問子路徑cookie有效期:cookie在設置的有效期內有效,默認爲瀏覽器關閉;sessionStorage在窗口關閉前有效,localStorage長期有效,直到用戶刪除共享:sessionStorage不能共享,localStorage在同源文檔之間共享,cookie在同源且符合path規則的文檔之間共享localStorage的修改會促發其餘文檔窗口的update事件cookie有secure屬性要求HTTPS傳輸瀏覽器不能保存超過300個cookie,單個服務器不能超過20個,每一個cookie不能超過4k。web storage大小支持能達到5M                                                                                                                              更多學習資料及答案歡迎加羣一塊兒探討哦:907694362

相關文章
相關標籤/搜索