1操灿,什么是事件代理且描述事件代理的原理及為什么要用事件代理配乱?
事件委托也叫事件代理。利用事件冒泡于毙,讓自己的觸發(fā)的事件敦冬,讓父元素代替執(zhí)行。
它可以使 (1)性能更優(yōu) (2)動態(tài)創(chuàng)建的DOM依然具有事件
2唯沮,移動端1px問題脖旱,為什么會有?如何解決介蛉?
因為在移動端萌庆,由于屏幕分辨率的不同,現(xiàn)在分為一倍屏币旧,二倍屏践险,三倍屏。在不同的分辨率上吹菱,有可能1像素巍虫,被渲染成兩個像素,或者三個像素點鳍刷,所有實際寫代碼時占遥,寫border:1px solid red;時,1px可能被渲染為2px或者3px
1px的解決方案
1.先使用偽類元素實現(xiàn)邊框效果输瓜,然后通過媒體查詢來操控transform: scale來適配不同分辨率
2.使用border-image來代替border
3.使用viewport +rem
3瓦胎,解釋jsonp的原理
ajax請求受同源策略影響,不允許進行跨域請求前痘,而script標簽src屬性中的鏈接卻可以訪問跨域的js腳本凛捏,利用這個特性,服務端不再返回JSON格式的數(shù)據(jù)芹缔,而是返回一段調(diào)用某個函數(shù)的js代碼坯癣,在src中進行了調(diào)用,這樣實現(xiàn)了跨域最欠。
就是利用瀏覽器可以動態(tài)地插入一段js并執(zhí)行的特點完成的示罗。
4惩猫,在工作中你是如何優(yōu)化自己的代碼的?
全組件化
模塊化封裝
代碼重用
避免全局變量(命名空間蚜点,封閉空間轧房,模塊化 mvc..)
拆分函數(shù)避免函數(shù)過于臃腫
注釋
5,axios是什么绍绘?如何使用奶镶?描述其實現(xiàn)登錄的流程
Axios 是一個基于 promise 的 HTTP 庫,可以用在瀏覽器和 node.js 中陪拘。
1.支持promise
2.提供了一些并發(fā)請求的方法
3.提供攔截器
4.可以實例化厂镇,進行基礎(chǔ)配置
5.提供支持
登錄基本流程描述
客戶端用戶輸入賬戶密碼通過API傳遞給后臺,后臺收到賬戶和密碼以后就會和數(shù)據(jù)庫中的進行比對左刽,如果都正確捺信,那么就更新用戶的狀態(tài)為已登錄。
axios登錄和其它最大的區(qū)別
就是提供了攔截器功能