精品一区二区中文在线,无遮挡h肉动漫在线观看,国产99视频精品免视看9,成全免费高清大全

前端面試題

時間:2024-06-20 09:34:10 學人智庫 我要投稿

前端面試題

  【編者按】前端對于網站來說,通常是指,網站的前臺部分包括網站的表現層和結構層。因此前端技術一般分為前端設計和前端開發,前端設計一般可以理解為網站的視覺設計,前端開發則是網站的前臺代碼實現,包括基本的HTML和CSS以及JavaScript/ajax,現在最新的高級版本HTML5、CSS3,以及SVG等。

前端面試題

  前端面試題:HTML+CSS

  1.對WEB標準以及W3C的理解與認識

  標簽閉合、標簽小寫、不亂嵌套、提高搜索機器人搜索幾率、使用外鏈css和js腳本、結構行為表現的分離、文件下載與頁面速度更快、內容能被更多的用戶所訪問、內容能被更廣泛的設備所訪問、更少的代碼和組件,容易維護、改版方便,不需要變動頁面內容、提供打印版本而不需要復制內容、提高網站易用性;

  2.xhtml和html有什么區別

  HTML是一種基本的WEB網頁設計語言,XHTML是一個基于XML的置標語言

  最主要的不同:

  XHTML 元素必須被正確地嵌套。

  XHTML 元素必須被關閉。

  標簽名必須用小寫字母。

  XHTML 文檔必須擁有根元素。

  3.Doctype? 嚴格模式與混雜模式-如何觸發這兩種模式,區分它們有何意義?

  用于聲明文檔使用那種規范(html/Xhtml)一般為 嚴格 過度 基于框架的html文檔

  加入XMl聲明可觸發,解析方式更改為IE5.5 擁有IE5.5的bug

  4.行內元素有哪些?塊級元素有哪些?CSS的盒模型?

  塊級元素:div p h1 h2 h3 h4 form ul

  行內元素: a b br i span input select

  Css盒模型:內容,border ,margin,padding

  5.CSS引入的方式有哪些? link和@import的區別是?

  內聯 內嵌 外鏈 導入

  區別 :同時加載

  前者無兼容性,后者CSS2.1以下瀏覽器不支持

  Link 支持使用javascript改變樣式,后者不可

  6.CSS選擇符有哪些?哪些屬性可以繼承?優先級算法如何計算?內聯和important哪個優先級高?

  標簽選擇符 類選擇符 id選擇符

  繼承不如指定 Id>class>標簽選擇

  后者優先級高

  7.前端頁面有哪三層構成,分別是什么?作用是什么?

  結構層 Html 表示層 CSS 行為層 js

  8.css的'基本語句構成是?

  選擇器{屬性1:值1;屬性2:值2;……}

  9.你做的頁面在哪些流覽器測試過?這些瀏覽器的內核分別是什么?

  Ie(Ie內核) 火狐(Gecko) 谷歌(webkit) opear(Presto)

  10.寫出幾種IE6 BUG的解決方法

  1.雙邊距BUG float引起的 使用display

  2.3像素問題 使用float引起的 使用dislpay:inline -3px

  3.超鏈接hover 點擊后失效 使用正確的書寫順序 link visited hover active

  4.Ie z-index問題 給父級添加position:relative

  5.Png 透明 使用js代碼 改

  6.Min-height 最小高度 !Important 解決’

  7.select 在ie6下遮蓋 使用iframe嵌套

  8.為什么沒有辦法定義1px左右的寬度容器(IE6默認的行高造成的,使用over:hidden,zoom:0.08 line-height:1px)

  11.圖片標簽上title與alt屬性的區別是什么?

  Alt 當圖片不顯示是 用文字代表。

  Title 為該屬性提供信息

  12.描述css reset的作用和用途。

  Reset重置瀏覽器的css默認屬性 瀏覽器的品種不同,樣式不同,然后重置,讓他們統一

  13.解釋css sprites,如何使用。

  Css 精靈 把一堆小的圖片整合到一張大的圖片上,減輕服務器對圖片的請求數量

  14.瀏覽器標準模式和怪異模式之間的區別是什么?

  盒子模型 渲染模式的不同

  使用 window.top.document.compatMode 可顯示為什么模式

  15.你如何對網站的文件和資源進行優化?期待的解決方案包括:

  文件合并

  文件最小化/文件壓縮

  使用CDN托管

  緩存的使用

  16.什么是語義化的HTML?

  直觀的認識標簽 對于搜索引擎的抓取有好處

  17.清除浮動的幾種方式,各自的優缺點

  1.使用空標簽清除浮動 clear:both(理論上能清楚任何標簽,,,增加無意義的標簽)

  2.使用overflow:auto(空標簽元素清除浮動而不得不增加無意代碼的弊端,,使用zoom:1用于兼容IE)

  3.是用afert偽元素清除浮動(用于非IE瀏覽器)

  前端面試題:Javascript

  1.javascript的typeof返回哪些數據類型

  Object number function boolean underfind

  2.例舉3種強制類型轉換和2種隱式類型轉換?

  強制(parseInt,parseFloat,number)

  隱式(== - ===)

  3.split() join() 的區別

  前者是切割成數組的形式,后者是將數組轉換成字符串

  4.數組方法pop() push() unshift() shift()

  Push()尾部添加 pop()尾部刪除

  Unshift()頭部添加 shift()頭部刪除

  5.事件綁定和普通事件有什么區別

  6.IE和DOM事件流的區別

  1.執行順序不一樣、

  2.參數不一樣

  3.事件加不加on

  4.this指向問題

  7.IE和標準下有哪些兼容性的寫法

  Var ev = ev || window.event

  document.documentElement.clientWidth || document.body.clientWidth

  Var target = ev.srcElement||ev.target

  8.ajax請求的時候get 和post方式的區別

  一個在url后面 一個放在虛擬載體里面

  有大小限制

  安全問題

  應用不同 一個是論壇等只需要請求的,一個是類似修改密碼的`

  9.call和apply的區別

  Object.call(this,obj1,obj2,obj3)

  Object.apply(this,arguments)

  10.ajax請求時,如何解釋json數據

  使用eval parse 鑒于安全性考慮 使用parse更靠譜

  11.b繼承a的方法

  12.寫一個獲取非行間樣式的函數

  function getStyle(obj, attr, value) {

  if(!value) {

  if(obj.currentStyle) {

  return obj.currentStyle(attr)

  }

  else {

  obj.getComputedStyle(attr, false)

  }

  }

  else {

  obj.style[attr]=value

  }

  }

  13.事件委托是什么

  讓利用事件冒泡的原理,讓自己的所觸發的事件,讓他的父元素代替執行!

  14.閉包是什么,有什么特性,對頁面有什么影響

  閉包就是能夠讀取其他函數內部變量的函數。

  15.如何阻止事件冒泡和默認事件

  canceBubble return false

  16.添加 刪除 替換 插入到某個接點的方法

  obj.appendChidl()

  obj.innersetBefore

  obj.replaceChild

  obj.removeChild

  17.解釋jsonp的原理,以及為什么不是真正的ajax

  動態創建script標簽,回調函數

  Ajax是頁面無刷新請求數據操作

  18.javascript的本地對象,內置對象和宿主對象

  本地對象為array obj regexp等可以new實例化

  內置對象為gload Math 等不可以實例化的

  宿主為瀏覽器自帶的document,window 等

  19.document load 和document ready的區別

  Document.onload 是在結構和樣式加載完才執行js

  Document.ready原生種沒有這個方法,jquery中有 $().ready(function)

  20.”==”和“===”的不同

  前者會自動轉換類型

  后者不會

  21.javascript的同源策略

  一段腳本只能讀取來自于同一來源的窗口和文檔的屬性,這里的同一來源指的是主機名、協議和端口號的組合

  22.編寫一個數組去重的方法

  function oSort(arr) {

  var result= {}

  ;

  var newArr=[];

  for(var i=0;

  i

  i++) {

  if(!result[arr[i]]) {

  newArr.push(arr[i]) result[arr[i]]=1

  }

  }

  return newArr

  }

  23.排序算法

  //快速排序

  function oSort(arr) {

  if(arr.length<=1) {

  return arr

  }

  var left=[];

  var right=[];

  var oNum=Math.floor(arr.length/2);

  var oNumVode=arr.splice(oNum, 1);

  for(var i=0;i

  if(arr[i]

  left.push(arr[i])

  }

  else {

  right.push(arr[i])

  }

  }

  return oSort(left).concat([oNumVode], oSort(right))

  }

  //冒泡排序

  var array=[5,4,3,2,1];

  var temp=0;

  for (var i=0;i < array.length;i++) {

  for (var j=0;

  j < array.length - i;j++) {

  if (array[j] > array[j + 1]) {

  temp=array[j + 1];

  array[j + 1]=array[j];

  array[j]=temp;

  }

  }

  }

【前端面試題】相關文章:

前端工程師面試題10-20

Web前端面試題目及答案06-30

Microsoft面試題09-04

iOS面試題07-10

公司面試題09-12

hibernate面試題10-18

英語面試題精選06-13

小升初面試題06-10

PHP面試題10-14

小升初面試題型08-24