寫(xiě)給前端新人:前端開(kāi)發(fā)必會(huì)的25個(gè)知識(shí)點(diǎn)

1. 常用那幾種瀏覽器測(cè)試?有哪些內(nèi)核(Layout Engine)?

(Q1) 瀏覽器:IE辽社,Chrome,F(xiàn)ireFox翘鸭,Safari滴铅,Opera。

(Q2) 內(nèi)核:Trident矮固,Gecko失息,Presto,Webkit档址。

2. 說(shuō)下行內(nèi)元素和塊級(jí)元素的區(qū)別盹兢?行內(nèi)塊元素的兼容性使用?(IE8 以下)

(Q1) 行內(nèi)元素:會(huì)在水平方向排列守伸,不能包含塊級(jí)元素绎秒,設(shè)置width無(wú)效,height無(wú)效(可以設(shè)置line-height)尼摹,margin上下無(wú)效见芹,padding上下無(wú)效。

塊級(jí)元素:各占據(jù)一行蠢涝,垂直方向排列玄呛。從新行開(kāi)始結(jié)束接著一個(gè)斷行。

(Q2) 兼容性:display:inline-block;*display:inline;*zoom:1;

3. 清除浮動(dòng)有哪些方式和二?比較好的方式是哪一種徘铝?

(Q1)

(1)父級(jí)div定義height。

(2)結(jié)尾處加空div標(biāo)簽clear:both惯吕。

(3)父級(jí)div定義偽類(lèi):after和zoom惕它。

(4)父級(jí)div定義overflow:hidden。

(5)父級(jí)div定義overflow:auto废登。

(6)父級(jí)div也浮動(dòng)淹魄,需要定義寬度。

(7)父級(jí)div定義display:table堡距。

(8)結(jié)尾處加br標(biāo)簽clear:both甲锡。

(Q2) 比較好的是第3種方式兆蕉,好多網(wǎng)站都這么用。

4. box-sizing常用的屬性有哪些搔体?分別有什么作用恨樟?

(Q1)box-sizing: content-box|border-box|inherit;

(Q2)content-box:寬度和高度分別應(yīng)用到元素的內(nèi)容框。在寬度和高度之外繪制元素的內(nèi)邊距和邊框(元素默認(rèn)效果)疚俱。

border-box:元素指定的任何內(nèi)邊距和邊框都將在已設(shè)定的寬度和高度內(nèi)進(jìn)行繪制劝术。通過(guò)從已設(shè)定的寬度和高度分別減去邊框和內(nèi)邊距才能得到內(nèi)容的寬度和高度。

5. Doctype作用呆奕?標(biāo)準(zhǔn)模式與兼容模式各有什么區(qū)別?

(Q1) 告知瀏覽器的解析器用什么文檔標(biāo)準(zhǔn)解析這個(gè)文檔养晋。DOCTYPE不存在或格式不正確會(huì)導(dǎo)致文檔以兼容模式呈現(xiàn)。

(Q2) 標(biāo)準(zhǔn)模式的排版和JS運(yùn)作模式都是以該瀏覽器支持的最高標(biāo)準(zhǔn)運(yùn)行梁钾。在兼容模式中绳泉,頁(yè)面以寬松的向后兼容的方式顯示,模擬老式瀏覽器的行為以防止站點(diǎn)無(wú)法工作。

6. HTML5 為什么只需要寫(xiě) 姆泻?

HTML5不基于 SGML零酪,因此不需要對(duì)DTD進(jìn)行引用,但是需要doctype來(lái)規(guī)范瀏覽器的行為(讓瀏覽器按照它們應(yīng)該的方式來(lái)運(yùn)行)拇勃。

而HTML4.01基于SGML,所以需要對(duì)DTD進(jìn)行引用四苇,才能告知瀏覽器文檔所使用的文檔類(lèi)型。

7. 頁(yè)面導(dǎo)入樣式時(shí)方咆,使用link和@import有什么區(qū)別月腋?

(1)link屬于XHTML標(biāo)簽,除了加載CSS外瓣赂,還能用于定義RSS, 定義rel連接屬性等作用榆骚;而@import是CSS提供的,只能用于加載CSS;

(2)頁(yè)面被加載的時(shí)煌集,link會(huì)同時(shí)被加載妓肢,而@import引用的CSS會(huì)等到頁(yè)面被加載完再加載;

(3)import是CSS2.1 提出的,只在IE5以上才能被識(shí)別苫纤,而link是XHTML標(biāo)簽职恳,無(wú)兼容問(wèn)題。

8. 介紹一下你對(duì)瀏覽器內(nèi)核的理解方面?

主要分成兩部分:渲染引擎(layout engineer或RenderingEngine)和JS引擎。

渲染引擎:負(fù)責(zé)取得網(wǎng)頁(yè)的內(nèi)容(HTML色徘、XML恭金、圖像等等)、我們組建一大牛裙前面是4七一褂策,整理訊息(例如加入CSS等)横腿,中間是零2七颓屑,以及計(jì)算網(wǎng)頁(yè)的顯示方式,后面是壹武四耿焊,是學(xué)習(xí)的就加揪惦,不是學(xué)習(xí)的請(qǐng)勿打擾。然后會(huì)輸出至顯示器或打印機(jī)罗侯。瀏覽器的內(nèi)核的不同對(duì)于網(wǎng)頁(yè)的語(yǔ)法解釋會(huì)有不同器腋,所以渲染的效果也不相同。所有網(wǎng)頁(yè)瀏覽器钩杰、電子郵件客戶端以及其它需要編輯纫塌、顯示網(wǎng)絡(luò)內(nèi)容的應(yīng)用程序都需要內(nèi)核。

JS引擎則:解析和執(zhí)行javascript來(lái)實(shí)現(xiàn)網(wǎng)頁(yè)的動(dòng)態(tài)效果讲弄。

最開(kāi)始渲染引擎和JS引擎并沒(méi)有區(qū)分的很明確措左,后來(lái)JS引擎越來(lái)越獨(dú)立,內(nèi)核就傾向于只指渲染引擎避除。

9. html5有哪些新特性怎披?如何處理HTML5新標(biāo)簽的瀏覽器兼容問(wèn)題?如何區(qū)分 HTML 和 HTML5瓶摆?

(Q1)

HTML5 現(xiàn)在已經(jīng)不是 SGML 的子集凉逛,主要是關(guān)于圖像,位置赏壹,存儲(chǔ)鱼炒,多任務(wù)等功能的增加。

(1)繪畫(huà) canvas;

(2)用于媒介回放的 video 和 audio 元素;

(3)本地離線存儲(chǔ) localStorage 長(zhǎng)期存儲(chǔ)數(shù)據(jù)蝌借,瀏覽器關(guān)閉后數(shù)據(jù)不丟失;

(4)sessionStorage 的數(shù)據(jù)在瀏覽器關(guān)閉后自動(dòng)刪除;

(5)語(yǔ)意化更好的內(nèi)容元素昔瞧,比如 article、footer菩佑、header自晰、nav、section;

(6)表單控件稍坯,calendar酬荞、date、time瞧哟、email混巧、url、search;

(7)新的技術(shù)webworker, websocket, Geolocation;

(Q2)

IE8/IE7/IE6支持通過(guò)document.createElement方法產(chǎn)生的標(biāo)簽勤揩,

可以利用這一特性讓這些瀏覽器支持HTML5新標(biāo)簽咧党,

瀏覽器支持新標(biāo)簽后,還需要添加標(biāo)簽?zāi)J(rèn)的樣式陨亡。

當(dāng)然也可以直接使用成熟的框架傍衡、比如html5shim深员,



10. 簡(jiǎn)述一下你對(duì)HTML語(yǔ)義化的理解?

用正確的標(biāo)簽做正確的事情蛙埂。

html語(yǔ)義化讓頁(yè)面的內(nèi)容結(jié)構(gòu)化倦畅,結(jié)構(gòu)更清晰,便于對(duì)瀏覽器绣的、搜索引擎解析;

即使在沒(méi)有樣式CSS情況下也以一種文檔格式顯示叠赐,并且是容易閱讀的;

搜索引擎的爬蟲(chóng)也依賴(lài)于HTML標(biāo)記來(lái)確定上下文和各個(gè)關(guān)鍵字的權(quán)重,利于SEO;

使閱讀源代碼的人對(duì)網(wǎng)站更容易將網(wǎng)站分塊被辑,便于閱讀維護(hù)理解燎悍。

JavaScript

----------------------------

1. 介紹js的基本數(shù)據(jù)類(lèi)型

Undefined、Null盼理、Boolean谈山、Number、String

2. js有哪些內(nèi)置對(duì)象宏怔?

數(shù)據(jù)封裝類(lèi)對(duì)象:Object奏路、Array、Boolean臊诊、Number 和 String

其他對(duì)象:Function鸽粉、Arguments、Math抓艳、Date触机、RegExp、Error

3. this對(duì)象的理解

this總是指向函數(shù)的直接調(diào)用者(而非間接調(diào)用者)玷或;

如果有new關(guān)鍵字儡首,this指向new出來(lái)的那個(gè)對(duì)象;

在事件中偏友,this指向觸發(fā)這個(gè)事件的對(duì)象蔬胯,特殊的是,IE中的attachEvent中的this總是指向全局對(duì)象Window位他。

4. eval是做什么的氛濒?

它的功能是把對(duì)應(yīng)的字符串解析成JS代碼并運(yùn)行;

應(yīng)該避免使用eval鹅髓,不安全舞竿,非常耗性能(2次,一次解析成js語(yǔ)句窿冯,一次執(zhí)行)骗奖。

由JSON字符串轉(zhuǎn)換為JSON對(duì)象的時(shí)候可以用eval,var obj=eval('('+ str +')')。

5. DOM怎樣添加重归、移除、移動(dòng)厦凤、復(fù)制鼻吮、創(chuàng)建和查找節(jié)點(diǎn)

// 創(chuàng)建新節(jié)點(diǎn)

createDocumentFragment()? ? //創(chuàng)建一個(gè)DOM片段

createElement()? //創(chuàng)建一個(gè)具體的元素

createTextNode()? //創(chuàng)建一個(gè)文本節(jié)點(diǎn)

// 添加、移除较鼓、替換椎木、插入

appendChild()

removeChild()

replaceChild()

insertBefore() //在已有的子節(jié)點(diǎn)前插入一個(gè)新的子節(jié)點(diǎn)

// 查找

getElementsByTagName()? ? //通過(guò)標(biāo)簽名稱(chēng)

getElementsByName()? ? //通過(guò)元素的Name屬性的值(IE容錯(cuò)能力較強(qiáng),會(huì)得到一個(gè)數(shù)組博烂,其中包括id等于name值的)

getElementById()? ? //通過(guò)元素Id香椎,唯一性

6. null和undefined的區(qū)別?

null是一個(gè)表示"無(wú)"的對(duì)象禽篱,轉(zhuǎn)為數(shù)值時(shí)為0畜伐;undefined是一個(gè)表示"無(wú)"的原始值,轉(zhuǎn)為數(shù)值時(shí)為NaN躺率。

undefined:

(1)變量被聲明了玛界,但沒(méi)有賦值時(shí),就等于undefined悼吱。

(2) 調(diào)用函數(shù)時(shí)慎框,應(yīng)該提供的參數(shù)沒(méi)有提供,該參數(shù)等于undefined后添。

(3)對(duì)象沒(méi)有賦值的屬性笨枯,該屬性的值為undefined。

(4)函數(shù)沒(méi)有返回值時(shí)遇西,默認(rèn)返回undefined馅精。

null:

(1) 作為函數(shù)的參數(shù),表示該函數(shù)的參數(shù)不是對(duì)象努溃。

(2) 作為對(duì)象原型鏈的終點(diǎn)硫嘶。

7. new操作符具體干了什么呢?

(1)創(chuàng)建一個(gè)空對(duì)象,并且 this 變量引用該對(duì)象梧税,同時(shí)還繼承了該函數(shù)的原型沦疾。

(2)屬性和方法被加入到 this 引用的對(duì)象中。

(3)新創(chuàng)建的對(duì)象由 this 所引用第队,并且最后隱式的返回 this 哮塞。

8. JSON 的了解?

JSON(JavaScript Object Notation) 是一種輕量級(jí)的數(shù)據(jù)交換格式凳谦。它是基于JavaScript的一個(gè)子集忆畅。數(shù)據(jù)格式簡(jiǎn)單, 易于讀寫(xiě), 占用帶寬小。

格式:采用鍵值對(duì)尸执,例如:{'age':'12', 'name':'back'}

9. call() 和 apply() 的區(qū)別和作用家凯?

apply()函數(shù)有兩個(gè)參數(shù):第一個(gè)參數(shù)是上下文缓醋,第二個(gè)參數(shù)是參數(shù)組成的數(shù)組。如果上下文是null绊诲,則使用全局對(duì)象代替送粱。

如:function.apply(this,[1,2,3]);

call()的第一個(gè)參數(shù)是上下文,后續(xù)是實(shí)例傳入的參數(shù)序列掂之。

如:function.call(this,1,2,3);

10. 如何獲取UA抗俄?

function whatBrowser() {

document.Browser.Name.value=navigator.appName;

document.Browser.Version.value=navigator.appVersion;

document.Browser.Code.value=navigator.appCodeName;

document.Browser.Agent.value=navigator.userAgent;

}

其他

----------------------------

1. HTTP狀態(tài)碼知道哪些?

100? Continue? 繼續(xù)世舰,一般在發(fā)送post請(qǐng)求時(shí)动雹,已發(fā)送了http header之后服務(wù)端將返回此信息,表示確認(rèn)跟压,之后發(fā)送具體參數(shù)信息

200? OK? 正常返回信息

201? Created? 請(qǐng)求成功并且服務(wù)器創(chuàng)建了新的資源

202? Accepted? 服務(wù)器已接受請(qǐng)求胰蝠,但尚未處理

301? Moved Permanently? 請(qǐng)求的網(wǎng)頁(yè)已永久移動(dòng)到新位置。

302 Found? 臨時(shí)性重定向裆馒。

303 See Other? 臨時(shí)性重定向姊氓,且總是使用 GET 請(qǐng)求新的 URI。

304? Not Modified? 自從上次請(qǐng)求后喷好,請(qǐng)求的網(wǎng)頁(yè)未修改過(guò)翔横。

400 Bad Request? 服務(wù)器無(wú)法理解請(qǐng)求的格式,客戶端不應(yīng)當(dāng)嘗試再次使用相同的內(nèi)容發(fā)起請(qǐng)求梗搅。

401 Unauthorized? 請(qǐng)求未授權(quán)禾唁。

403 Forbidden? 禁止訪問(wèn)。

404 Not Found? 找不到如何與 URI 相匹配的資源无切。

500 Internal Server Error? 最常見(jiàn)的服務(wù)器端錯(cuò)誤荡短。

503 Service Unavailable 服務(wù)器端暫時(shí)無(wú)法處理請(qǐng)求(可能是過(guò)載或維護(hù))。

2. 你有哪些性能優(yōu)化的方法哆键?

(1) 減少http請(qǐng)求次數(shù):CSS Sprites, JS掘托、CSS源碼壓縮、圖片大小控制合適籍嘹;網(wǎng)頁(yè)Gzip闪盔,CDN托管,data緩存 辱士,圖片服務(wù)器泪掀。

(2) 前端模板 JS+數(shù)據(jù),減少由于HTML標(biāo)簽導(dǎo)致的帶寬浪費(fèi)颂碘,前端用變量保存AJAX請(qǐng)求結(jié)果异赫,每次操作本地變量,不用請(qǐng)求,減少請(qǐng)求次數(shù)

(3) 用innerHTML代替DOM操作塔拳,減少DOM操作次數(shù)鼠证,優(yōu)化javascript性能。

(4) 當(dāng)需要設(shè)置的樣式很多時(shí)設(shè)置className而不是直接操作style靠抑。

(5) 少用全局變量名惩、緩存DOM節(jié)點(diǎn)查找的結(jié)果。減少I(mǎi)O讀取操作孕荠。

(6) 避免使用CSS Expression(css表達(dá)式)又稱(chēng)Dynamic properties(動(dòng)態(tài)屬性)。

(7) 圖片預(yù)加載攻谁,將樣式表放在頂部稚伍,將腳本放在底部? 加上時(shí)間戳。

3. 什么叫優(yōu)雅降級(jí)和漸進(jìn)增強(qiáng)戚宦?

優(yōu)雅降級(jí):Web站點(diǎn)在所有新式瀏覽器中都能正常工作个曙,如果用戶使用的是老式瀏覽器,則代碼會(huì)檢查以確認(rèn)它們是否能正常工作受楼。由于IE獨(dú)特的盒模型布局問(wèn)題垦搬,針對(duì)不同版本的IE的hack實(shí)踐過(guò)優(yōu)雅降級(jí)了,為那些無(wú)法支持功能的瀏覽器增加候選方案,使之在舊式瀏覽器上以某種形式降級(jí)體驗(yàn)卻不至于完全失效艳汽。

漸進(jìn)增強(qiáng):從被所有瀏覽器支持的基本功能開(kāi)始猴贰,逐步地添加那些只有新式瀏覽器才支持的功能,向頁(yè)面增加無(wú)害于基礎(chǔ)瀏覽器的額外樣式和功能的。當(dāng)瀏覽器支持時(shí)河狐,它們會(huì)自動(dòng)地呈現(xiàn)出來(lái)并發(fā)揮作用米绕。

4. 哪些常見(jiàn)操作會(huì)造成內(nèi)存泄漏?

內(nèi)存泄漏指任何對(duì)象在您不再擁有或需要它之后仍然存在馋艺。

垃圾回收器定期掃描對(duì)象栅干,并計(jì)算引用了每個(gè)對(duì)象的其他對(duì)象的數(shù)量。如果一個(gè)對(duì)象的引用數(shù)量為 0(沒(méi)有其他對(duì)象引用過(guò)該對(duì)象)捐祠,或?qū)υ搶?duì)象的惟一引用是循環(huán)的碱鳞,那么該對(duì)象的內(nèi)存即可回收。

setTimeout 的第一個(gè)參數(shù)使用字符串而非函數(shù)的話踱蛀,會(huì)引發(fā)內(nèi)存泄漏窿给。

閉包、控制臺(tái)日志星岗、循環(huán)(在兩個(gè)對(duì)象彼此引用且彼此保留時(shí)填大,就會(huì)產(chǎn)生一個(gè)循環(huán))。

5. 線程與進(jìn)程的區(qū)別

一個(gè)程序至少有一個(gè)進(jìn)程,一個(gè)進(jìn)程至少有一個(gè)線程俏橘。

線程的劃分尺度小于進(jìn)程允华,使得多線程程序的并發(fā)性高。

另外,進(jìn)程在執(zhí)行過(guò)程中擁有獨(dú)立的內(nèi)存單元靴寂,而多個(gè)線程共享內(nèi)存磷蜀,從而極大地提高了程序的運(yùn)行效率。

線程在執(zhí)行過(guò)程中與進(jìn)程還是有區(qū)別的百炬。每個(gè)獨(dú)立的線程有一個(gè)程序運(yùn)行的入口褐隆、順序執(zhí)行序列和程序的出口。但是線程不能夠獨(dú)立執(zhí)行剖踊,必須依存在應(yīng)用程序中庶弃,由應(yīng)用程序提供多個(gè)線程執(zhí)行控制。

從邏輯角度來(lái)看德澈,多線程的意義在于一個(gè)應(yīng)用程序中歇攻,有多個(gè)執(zhí)行部分可以同時(shí)執(zhí)行。但操作系統(tǒng)并沒(méi)有將多個(gè)線程看做多個(gè)獨(dú)立的應(yīng)用梆造,來(lái)實(shí)現(xiàn)進(jìn)程的調(diào)度和管理以及資源分配缴守。這就是進(jìn)程和線程的重要區(qū)別。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末镇辉,一起剝皮案震驚了整個(gè)濱河市屡穗,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌忽肛,老刑警劉巖村砂,帶你破解...
    沈念sama閱讀 222,590評(píng)論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異屹逛,居然都是意外死亡箍镜,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,157評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門(mén)煎源,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)色迂,“玉大人,你說(shuō)我怎么就攤上這事手销⌒” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 169,301評(píng)論 0 362
  • 文/不壞的土叔 我叫張陵锋拖,是天一觀的道長(zhǎng)诈悍。 經(jīng)常有香客問(wèn)我,道長(zhǎng)兽埃,這世上最難降的妖魔是什么侥钳? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 60,078評(píng)論 1 300
  • 正文 為了忘掉前任,我火速辦了婚禮柄错,結(jié)果婚禮上舷夺,老公的妹妹穿的比我還像新娘苦酱。我一直安慰自己,他們只是感情好给猾,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,082評(píng)論 6 398
  • 文/花漫 我一把揭開(kāi)白布疫萤。 她就那樣靜靜地躺著,像睡著了一般敢伸。 火紅的嫁衣襯著肌膚如雪扯饶。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 52,682評(píng)論 1 312
  • 那天池颈,我揣著相機(jī)與錄音尾序,去河邊找鬼。 笑死躯砰,一個(gè)胖子當(dāng)著我的面吹牛蹲诀,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播弃揽,決...
    沈念sama閱讀 41,155評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼则北!你這毒婦竟也來(lái)了矿微?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 40,098評(píng)論 0 277
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤尚揣,失蹤者是張志新(化名)和其女友劉穎涌矢,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體快骗,經(jīng)...
    沈念sama閱讀 46,638評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡娜庇,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,701評(píng)論 3 342
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了方篮。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片名秀。...
    茶點(diǎn)故事閱讀 40,852評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖藕溅,靈堂內(nèi)的尸體忽然破棺而出匕得,到底是詐尸還是另有隱情,我是刑警寧澤巾表,帶...
    沈念sama閱讀 36,520評(píng)論 5 351
  • 正文 年R本政府宣布汁掠,位于F島的核電站,受9級(jí)特大地震影響集币,放射性物質(zhì)發(fā)生泄漏考阱。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,181評(píng)論 3 335
  • 文/蒙蒙 一鞠苟、第九天 我趴在偏房一處隱蔽的房頂上張望乞榨。 院中可真熱鬧秽之,春花似錦、人聲如沸姜凄。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,674評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)态秧。三九已至董虱,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間申鱼,已是汗流浹背愤诱。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,788評(píng)論 1 274
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留捐友,地道東北人淫半。 一個(gè)月前我還...
    沈念sama閱讀 49,279評(píng)論 3 379
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像匣砖,于是被迫代替她去往敵國(guó)和親科吭。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,851評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容