前端筆試題匯總 2018/12/04 (2)
定位布局:
通過設置position屬性實現。
CSS中規定的第三種定位機制,能夠實現橫向多列布局及較為復雜的定位。
比如:帶有遮罩層效果的提示框、固定層效果、全屏廣告等等。
流式布局:讓布局脫離固定值限制,可以根據頁面情況改變相應發生改變
vue用什麽寫的:
怎麽跟後端商量命名接口的,接口定義成什麽格式:
定好接口名稱 參數 格式 方法 返回值
閉包傳遞參數:在javascript中是不允許直接訪問保存在堆內存中的對象的,所以在訪問一個對象時,首先得到的是這個對象在堆內存中的地址,然後再按照這個地址去獲得這個對象中的值,這就是傳說中的按引用訪問。而原始類型的值則是可以直接訪問到的。
1、 當傳遞的為基本類型值得時候, 計算機會在棧內存開辟一塊空間進行存儲
2、當傳遞為 引用類型值的時候, 計算機會在棧內存開辟一塊空間存儲指針, 指向堆內存的 數據
3、棧內存數據是js自己自動創建。並自己回收的
Css優先級:瀏覽器默認樣式 < 瀏覽器用戶自定義樣式 < 外部樣式表 < 內部樣式表 < 內聯樣式表
Px rpx em rem :https://blog.csdn.net/yeshenliaosuifeng/article/details/77282296
rem是指相對於根元素的字體大小的單位。em單位是指相對於父元素的字體大小的單位。為了簡化font-size的換算,需要在css中的body選擇器中聲明Font-size=62.5%,這就使em值變為 16px*62.5%=10px, 這樣12px=1.2em, 10px=1em, 也就是說只需要將你的原來的px數值除以10,然後換上em作為單位就行了。在項目裏的字體、容器(如div等)都可以 用rem,這樣的話它就能自己隨屏幕尺寸調節了。
規定屏幕寬為750rpx 1rem=750/20rpx。
iPhone6 上,屏幕寬度為375px 1rpx = 0.5px
保存用戶登錄狀態:
https://www.jianshu.com/p/b2b634c77502
箭頭函數與普通函數的區別:
箭頭函數是匿名函數,不能作為構造函數,不能使用new
箭頭函數不綁定arguments,取而代之用rest參數...解決
箭頭函數不綁定this,會捕獲其所在的上下文的this值,作為自己的this值
箭頭函數通過 call() 或 apply() 方法調用一個函數時,只傳入了一個參數,對 this 並沒有影響。
箭頭函數沒有原型屬性
1、箭頭函數的this永遠指向其上下文的 this,任何方法都改變不了其指向,如call(), bind(), apply()
2、普通函數的this指向調用它的那個對象
Vue的生命周期:
1、創建前/後: 在 beforeCreate 階段,vue 實例的掛載元素 el 還沒有。
2、載入前/後:在 beforeMount 階段,vue 實例的$el 和 data 都初始化了,但還是掛載之前為虛擬的 dom 節點,data.message 還未替換。在 mounted 階段,vue 實例掛載完成,data.message 成功渲染。
3、更新前/後:當 data 變化時,會觸發 beforeUpdate 和 updated 方法。
4、銷毀前/後:在執行 destroy 方法後,對 data 的改變不會再觸發周期函數,說明此時 vue 實例已經解除了事件監聽以及和 dom 的綁定,但是 dom 結構依然存在
Vue的雙向綁定:vue.js 是采用數據劫持結合發布者-訂閱者模式的方式,通過 Object.defineProperty()來劫持各個屬性的 setter,getter,在數據變動時發布消息給訂閱者,觸發相應的監聽回調。
小程序怎麽實現與後臺的交互:微信與後臺服務器之間的數據通信是調用wx.request實現的
vue怎麽實現與後臺的交互:實現統一向後端發送請求數據,封裝一個ajax請求,在項目config文件夾下的index.js文件裏設置跨域
深拷貝和淺拷貝:
淺拷貝只是復制了對象的引用地址,兩個對象指向同一個內存地址,所以修改其中任意的值,另一個值都會隨之變化。 深拷貝是將對象及值復制過來,兩個對象修改其中任意的值另一個值不會改變
GET請求與POST請求的區別:GET和POST本質上沒有區別
GET把參數包含在URL中,POST通過request body傳遞參數。
GET請求只能進行url編碼,而POST支持多種編碼方式。
GET請求在URL中傳送的參數是有長度限制的,而POST麽有。
GET比POST更不安全,因為參數直接暴露在URL上,所以不能用來傳遞敏感信息。
H5的新標簽有哪些:
1.多媒體:<audio></audio>, <video><video>,<source></source>, <embed></embed>, <track></track>
2.新表單元素:<datalist> ,<output> ,
<keygen>
3.新文檔節段和綱要:<header>
頁面頭部、<section>章節、<aside>邊欄、<article>文檔內容、<footer>頁面底部
等
CSS3的新特性:
新的選擇器、文字及塊陰影、多背景圖、顏色漸變、圓角等。CSS3的各種動畫效果,如:旋轉、移動、縮放等,還包括圖標字體的應用。
動畫有哪些屬性:旋轉、移動、縮放、傾斜等
vue的生命周期函數:
- beforeCreate
- created
- beforeMount
- mounted
- beforeUpdate
- updated
- beforeDestroy
- destroyed
ES6的新特性:
Map:數組映射一個新數組
數組去重的方法:
1、構建一個新的數組存放結果,for循環中每次從原數組中取出一個元素,用這個元素循環與結果數組對比,若結果數組中沒有該元素,則存到結果數組中2、先將原數組進行排序,檢查原數組中的第i個元素 與 結果數組中的最後一個元素是否相同,因為已經排序,所以重復元素會在相鄰位置,如果不相同,則將該元素存入結果數組中
排序算法:
冒泡排序
兩個數組拼接 arrayObject.concat(arrayX,arrayX,......,arrayX)
異步、同步、阻塞、非阻塞
異步和同步:被請求人的消息通知機制
異步:當被請求人處理完成事情以後會主動通知(事件通知,回調等方式)
同步:當被請求人處理完成事情以後不會主動通知,需要請求的人主動輪詢
前端筆試題匯總 2018/12/04 (2)