专干老熟女a片,日韩毛片免费无码无毒视频观看,日韩中文字幕免费视频,解开老师裙子猛烈进入动漫

IT技術

實用的jQuery代碼段面試題
作者:
來源: 網絡
發布日期: 2018/3/12 11:27:06
點擊量: 3696次
【 字體:
背景顏色:

1.請簡要說明jQuery框架的顯著特點。 

答:jQuery強調的理念是寫的少,做的多(write less,do more)。其主要特點有:輕量級、強大的選擇器、漂亮的DOM操作封裝、可靠的事件處理機制、完善的Ajax處理、出色的瀏覽器兼容性、鏈式操作方式、豐富的插件支持、開源產品。 

2.eval是做什么的? 

答:eval功能是把對應的字符串解析成JS代碼并運行;但不安全,非常耗性能。  

3.null與undefined的區別?  

答:Undefined類型只有一個值,即undefined,當聲明的變量還未被初始化時,變量的默認值為undefined。Null類型也只有一個值,即null,null用來表示尚未存在的對象,常用來表示函數企圖返回一個不存在的對象。  

4.談談對this對象的理解。  

答:this是js的一個關鍵字,隨著函數使用場合不同,this的值會發生變化。但是有一個總原則,那就是this指的是調用函數的那個對象。 

 5.use strict是什么意思?  

答:表示代碼標志為“嚴格模式”,則其中運行的所有代碼都必然是嚴格模式下的。如果在語法檢測時發現語法問題,則整個代碼塊失效,并導致一個語法異常。如果在運行期出現了違反嚴格模式的代碼,則拋出執行異常。  

6.簡述new操作符的功能。  

答:(1)創建一個空對象,使用this變量引用該對象,同時還繼承了該函數的原型 (2)屬性和方法被加入到this引用的對象中。(3)新創建的對象由this所引用,并且最后隱式的返回this。 

 7.描述typeof關鍵字的功能。 

 答:typeof可用來判斷一個變量是否為空或是什么類型的變量。typeof一般只能返回如下幾個結果:number、boolean、string、function、object、undefined。  

8.描述instanceof關鍵字的功能。  

答:instanceof可用來判斷一個變量是否為空或是什么類型的變量。如果想判斷一個變量是否某個對象的實例建議使用instanceof關鍵字。  

9.簡述hasOwnProperty函數的功能。  

答:hasOwnProperty函數是用來判斷一個對象是否有你給出名稱的屬性或對象。不過需要注意的是,此方法無法檢查該對象的原型鏈中是否具有該屬性,該屬性必須是對象本身的一個成員。  

10.簡述一下isPrototypeOf函數的功能。 

答:isPrototypeOf函數是用來判斷要檢查其原型鏈的對象是否存在于指定對象實例中,是則返回true,否則返回false。  

11.談談對JSON的了解。

 答:JSON(JavaScript Object Notation)是一種輕量級的數據交換格式。其是基于JavaScript的一個子集,具有數據格式簡單,易于讀寫,占用空間小的特點。  

12.Ajax是什么?  

答:AJAX即“Asynchronous Javascript+XML”(異步JavaScript和XML),是指一種創建交互式網頁應用的網頁開發技術。通過在后臺與服務器進行少量數據交換,AJAX可以使網頁實現異步更新。這意味著可以在不重新加載整個網頁的情況下,對網頁的某部分進行更新。  

13.同步請求和異步請求的區別?  

答:  ? 同步:提交請求→等待服務器處理→處理完畢返回,這個期間客戶端瀏覽器不能干任何事。 ? 異步:請求通過事件觸發→服務器處理(這是瀏覽器仍然可以作其他事情)→處理完畢。 

14.jQuery如何解決跨域問題?  

答:借助JSONP這個非官方的協議,其允許在服務器端集成script tags返回至客戶端,通過callback的形式實現跨域訪問JSONP即JSON with Padding。如果要進行跨域請求,我們可以通過使用html的script標記來進行跨域請求,并在響應中返回要執行的script代碼,其中可以直接使用JSON傳遞javascript對象。  

15.異步加載的方式有哪些?  

答:  (1)defer,只支持IE;(2)async;(3)創建script,插入到DOM; 

16.如何編寫高性能的jQuery代碼?  

答:定義jQuery變量的時候添加var關鍵字;DOM操作請務必記住緩存(cache);盡量使用鏈式操作;盡量把一些代碼都整合到一起;避免使用全局類型的選擇器;盡量使用.on方法,因為其它任何方法都是最終使用.on方法來實現的;盡量使用最新版本的jQuery框架類庫。  

17.jQuery與jQuery UI有啥區別? 

答:(1)jQuery是一個js庫,主要提供的功能是選擇器,屬性修改和事件綁定等等。  (2)jQuery UI則是在jQuery的基礎上,利用jQuery的擴展性,設計的插件。提供了一些常用的界面元素,諸如對話框、拖動行為、改變大小行為等等。  

18.描述基于class的選擇器與基于id選擇器在性能上的區別。 

答:基于class的選擇性的性能相對于基于id選擇器開銷很大,因為其需要遍歷所有DOM元素。  

19.jQuery鏈式調用的最大優點是什么?  

答:避免頻繁操作的DOM,鏈式調用可以實現先緩存再操作。 

20.一句話說明內存泄漏的定義。  

答:內存泄漏指任何對象在您不再擁有或需要它之后仍然存在。 

21.那些操作會造成內存泄漏?  

答:  ? 給DOM對象添加的屬性是一個對象的引用。 ? DOM對象與JS對象相互引用。 ? 給DOM對象用attachEvent綁定事件。  ? 從外到內執行appendChild,這時即使調用removeChild也無法釋放。 ? 反復重寫同一個屬性會造成內存大量占用。 

22.描述垃圾回收器的功能。  

答:垃圾回收器定期掃描對象,并計算引用了每個對象的其他對象的數量。如果一個對象的引用數量為0(沒有其他對象引用過該對象),或對該對象的惟一引用是循環的,那么該對象的內存即可回收。  

23.documen.write和innerHTML的區別?  

答:document.write只能重繪整個頁面,innerHTML可以重繪頁面的一部分。  

24.jQuery框架的源碼看過嗎?能不能簡單說一下它的實現原理?  

答:jQuery框架通過改變javascript編碼方式來創建了全新的編程理念。譬如關于jQuery聲明的流程:先查找(創建)jQuery對象,然后調用jQuery對象的方法完成我們需要完成的工作。jQuery就是以這種可以說是最簡單的編碼邏輯來改變javascript編碼方式的,這個流程就是jQuery的編碼邏輯核心。  

25.jQuery中如何將對象轉化為json字符串,然后再轉化回來? 

答:可以通過JSON.stringify方法把一個對象轉換成json字符串,再通過JSON.parse方法把一個json字符串解析成對象。  

26.描述一下.get()、[]和.eq()方法的區別。  

答:eq返回原生jQuery對象,截取某些el元素生成jQuery新對象;get和[]返回的都是原生的DOM對象,原理一致;get和[]區別是get是通過jQuery對象的方法獲取,[]是根據jQuery是一個數組對象獲取。  

27.描述一下context的概念。 

答:context就是限定查找的范圍,context必須是一個DOM元素,context底層還是用了.find()方法來實現的。  

28.描述一下.delegate()和.live()方法的區別。 

答:delegate方法指定了委托對象,live方法委托給了jQuery的context,1.9版本以后用on方法代替了。  

29.描述一下.attr()和.prop()方法的區別。  

答:.attr()方法是操作屬性節點,.prop()方法是操作獲取到的對應js對象的屬性。在遇到要獲取或設置checked、selected、readonly和disabled等屬性時,用prop方法顯然更好。.prop()方法更高效,因為.attr()方法要訪問DOM。  

30.jQuery中的load方法一般怎么用的?  

答:load方法一般在載入遠程HTML代碼并插入到DOM中的時候用,通常用來從Web服務器上獲取靜態的數據文件。如果要傳遞參數的話,可以使用$.get()或$.post()方法。

掃一掃在手機打開當前頁

Contact

聯系我們

告訴我們您想要的吧!我們為當地客戶提供專業、及時的服務
地址:云南省昆明市白云路368號
電話:400-871-8716 (工作時間:09:00-18:00(周一至周五))
何總:23592693
李總:53815112
主站蜘蛛池模板: 太仓市| 炎陵县| 锡林郭勒盟| 宁国市| 集贤县| 巴林右旗| 锦屏县| 鸡西市| 通河县| 扬州市| 兖州市| 巴南区| 绥德县| 德格县| 丘北县| 赫章县| 南华县| 博爱县| 漳平市| 辽宁省| 永清县| 西盟| 寿阳县| 河西区| 铜川市| 江油市| 临沂市| 闵行区| 尉犁县| 金川县| 屏南县| 皮山县| 巴东县| 博野县| 泸溪县| 清水县| 厦门市| 犍为县| 昌江| 来凤县| 德令哈市|