目錄:
1弄跌,new操作符干了什么?
2尝苇,null和undefined的區(qū)別铛只?
3埠胖,eval是做什么的?
4淳玩,什么是瀏覽器的同源策略直撤?
5,iframe的優(yōu)缺點(diǎn)
一:new操作符干了什么蜕着?
1谋竖,new關(guān)鍵字 通過構(gòu)造函數(shù)創(chuàng)建出來的實(shí)例可以訪問到構(gòu)造函數(shù)中的屬性
2,new關(guān)鍵字 通過構(gòu)造函數(shù)創(chuàng)建出來的實(shí)例可以訪問到構(gòu)造函數(shù)原型鏈中的屬性承匣,也就是說通過 new 操作符蓖乘,實(shí)例與構(gòu)造函數(shù)通過原型鏈連接了起來
3,new關(guān)鍵字 操作的構(gòu)造函數(shù)如果返回基本類型韧骗,那么這個(gè)返回值毫無意義,4驱敲,new關(guān)鍵字 操作的構(gòu)造函數(shù)如果返回引用類型,那么這個(gè)返回值會(huì)被正常使用
,總結(jié) new關(guān)鍵字到底做了些什么
先創(chuàng)建了一個(gè)新的空對象
然后讓這個(gè)空對象的proto指向函數(shù)的原型prototype
將對象作為函數(shù)的this傳進(jìn)去宽闲,如果return 出來東西是對象的話就直接返回 return 的內(nèi)容众眨,沒有的話就返回創(chuàng)建的這個(gè)對象
二:null和undefined的區(qū)別?
在javascript中容诬,null和undefined都用來表示一個(gè)空的值娩梨,
null
null類型,代表“空值”览徒,代表一個(gè)空對象指針狈定,使用typeof運(yùn)算得到 “object”,所以你可以認(rèn)為它是一個(gè)特殊的對象值习蓬。
使用場景:
作為函數(shù)的參數(shù)纽什,表示該函數(shù)的參數(shù)不是對象;
作為對象原型鏈的終點(diǎn)躲叼。
undefined
undefined類型芦缰,代表“未定義”,代表一個(gè)變量已經(jīng)聲明但是還未賦值枫慷,就是此處應(yīng)該有一個(gè)值让蕾,但是還沒有定義。
使用場景:
變量被聲明了或听,但沒有賦值時(shí)探孝,就等于undefined。
調(diào)用函數(shù)時(shí)誉裆,應(yīng)該提供的參數(shù)沒有提供顿颅,該參數(shù)等于undefined。
對象沒有賦值的屬性足丢,該屬性的值為undefined粱腻。
函數(shù)沒有返回值時(shí)绍填,默認(rèn)返回undefined。
三:eval是做什么的栖疑?
eval用來將字符串解析為javascript代碼并執(zhí)行
eval還可以將JSON字符串轉(zhuǎn)換為JSON對象
我們應(yīng)該避免使用eval讨永,它并不安全,而且非常耗性能
四:iframe的優(yōu)缺點(diǎn)遇革?
什么是iframe卿闹?
iframe就是框架網(wǎng)頁就是在同一個(gè)頁面里有多個(gè)網(wǎng)頁,使用框架的好處就是你在請求一個(gè)網(wǎng)頁的下一個(gè)頁面的時(shí)候,還有 一個(gè)網(wǎng)頁是一直顯示著的,這樣瀏覽者就不會(huì)就的等待的存在了;
iframe也稱作嵌入式框架,嵌入式框架和框架網(wǎng)頁類似萝快,它可以把一個(gè)網(wǎng)頁的框架和內(nèi)容嵌入在現(xiàn)有的網(wǎng)頁中锻霎。
iframe的優(yōu)缺點(diǎn)
優(yōu)點(diǎn)
iframe能夠原封不動(dòng)的把嵌入的網(wǎng)頁展現(xiàn)出來。
如果有多個(gè)網(wǎng)頁引用iframe揪漩,那么你只需要修改iframe的內(nèi)容旋恼,就可以實(shí)現(xiàn)調(diào)用的每一個(gè)頁面內(nèi)容的更改,方便快捷奄容。
網(wǎng)頁如果為了統(tǒng)一風(fēng)格冰更,頭部和版本都是一樣的,就可以寫成一個(gè)頁面昂勒,用iframe來嵌套蜀细,可以增加代碼的可重用。
如果遇到加載緩慢的第三方內(nèi)容如圖標(biāo)和廣告戈盈,這些問題可以由iframe來解決奠衔。
缺點(diǎn)
頁面樣式調(diào)試麻煩,出現(xiàn)多個(gè)滾動(dòng)條塘娶;
瀏覽器的后退按鈕失效归斤;
過多會(huì)增加服務(wù)器的HTTP請求;
小型的移動(dòng)設(shè)備無法完全顯示框架刁岸;
產(chǎn)生多個(gè)頁面脏里,不易管理;
不容易打幽寻啤膝宁;
iframe會(huì)阻塞主頁面的Onload事件
占用資源。每增加一個(gè) iframe根吁,相當(dāng)于多增加一個(gè)獨(dú)立的窗口,每個(gè) iframe 中都需要占用獨(dú)立的資源合蔽。
代碼復(fù)雜击敌,無法被一些搜索引擎解讀。