js核心語法

1.NaN

isNaN():非數(shù)(not number)祝旷,可確定值是否為非數(shù)字掀潮,是非數(shù)字(不是數(shù)字)輸出true匈挖,不是非數(shù)(是數(shù)字)輸出fluse

NaN 表示 “不是一個數(shù)字”寻歧,但是 NaN 的 typeof 結果卻是 number

2.replace方法

x.replace(原文本需要更改的部分耘戚,被更改為)

3.外部文件:可以把腳本保存到外部文件中。外部文件通常包含被多個網(wǎng)頁使用的代碼本涕。

外部 JavaScript 文件的文件擴展名是 .js业汰。

如需使用外部文件,請在 <script> 標簽的 "src" 屬性中設置該 .js 文件:

<script src="myScript.js"></script>

注釋:myFunction 保存在名為 "myScript.js" 的外部文件中菩颖。

4.對象也是一個變量样漆,但對象可以包含多個變量,每個值以 name:value 對呈現(xiàn)晦闰。

var car = {name:"Fiat", model:500, color:"white"};

5.對象方法作為一個函數(shù)定義存儲在對象屬性中放祟。對象也是變量,但是對象包含多個變量屬性

對象方法是一個函數(shù)定義,并作為一個屬性值存儲呻右。

var person = {

? ? firstName: "John",

? ? lastName : "Doe",

? ? fullName : function() //對象方法(作為函數(shù)定義儲存在對象屬性中)

? ? {

? ? ? return this.firstName + " " + this.lastName;

? ? }

對象方法通過添加 () 調(diào)用 (作為一個函數(shù))跪妥。

接上:

document.getElementById("demo").innerHTML = person.fullName();

6.作用域是可訪問變量的集合。

如果變量在函數(shù)內(nèi)沒有聲明(沒有使用 var 關鍵字)声滥,該變量為全局變量眉撵。

function myFunction() {

? ? carName = "Volvo";//沒有使用給關鍵字var,為全局變量

}

7.Math.random()

是令系統(tǒng)隨機選取大于等于 0.0 且小于 1.0 的偽隨機 double 值

8.for/in 語句循環(huán)遍歷對象的屬性

function myFunction(){

? ? var x;

? ? var txt;

? ? var person={fname:"Bill",lname:"Gates",age:56};

? ? for (x in person){

? ? ? ? txt=txt + person[x];//結果:BillGates56

? ? }

9.do/while 循環(huán):

該循環(huán)至少會執(zhí)行一次落塑,即使條件為 false 它也會執(zhí)行一次纽疟,因為代碼塊會在條件被測試前執(zhí)行:

do

{

? ? 需要執(zhí)行的代碼

}

while (條件);

10.break和continue的區(qū)別:

break:break 語句可用于跳出循環(huán)。

continue:continue 語句中斷當前的循環(huán)中的迭代芜赌,然后繼續(xù)循環(huán)下一個迭代

11.typeof(數(shù)據(jù)類型)和indexOf(返回指定字符串在字符串中首次出現(xiàn)的位置)

typeof 操作符來檢測變量的數(shù)據(jù)類型

數(shù)組是一種特殊的對象類型仰挣。 因此 typeof [1,2,3,4] 返回 object。

使用typeof檢測:對象{ }和數(shù)組[ ]的數(shù)據(jù)類型都是object(對象)

null 值為空缠沈,但是數(shù)據(jù)類型是object膘壶。 undefined值為 undefined, 類型為 undefined。

typeof 一個沒有值的變量會返回 undefined

null 和 undefined 的值相等洲愤,但類型不等:

typeof undefined? ? ? // undefined

typeof null? ? ? ? // object

null === undefined? ? ? // false

null == undefined? ? ? // true

12.js的 6 種不同的數(shù)據(jù)類型:

string

number

boolean

object

function

symbol

13.js三種對象類型:

Object

Date:數(shù)據(jù)類型為object

Array:數(shù)據(jù)類型為object

2 個不包含任何值的數(shù)據(jù)類型:

null:數(shù)據(jù)類型為object

undefined:數(shù)據(jù)類型為undefined

NaN:數(shù)據(jù)類型為number

14颓芭。強轉為數(shù)字

:字符串包含數(shù)字(如 "3.14") 轉換為數(shù)字 (如 3.14)〖泶停空字符串轉換為 0亡问。其他的字符串會轉換為 NaN (不是個數(shù)字)。

Number("3.14") // 返回 3.14 Number(" ")? // 返回 0 Number("")? // 返回 0 Number("99 88") // 返回 NaN

15.變量后跟一個+:變量的數(shù)據(jù)類型會轉換為數(shù)字型

將布爾值轉換為數(shù)字

全局方法 Number() 可將布爾值轉換為數(shù)字:

Number(false)? // 返回 0 Number(true)? // 返回 1

日期方法 getTime()和Number() 都可將日期轉換為數(shù)字:d = new Date(); Number(d) d.getTime()

16.正則基礎

正則表達式可以匹配某些特定的數(shù)據(jù)肛宋,可以從龐大的文字信息中提取出一小段你需要的數(shù)據(jù)

(1)字符組([])允許匹配一組可能出現(xiàn)的字符州藕。匹配Java和 java:[Jj]ava

(2)連字符(-)代表區(qū)間.

匹配數(shù)據(jù)所有的數(shù)字、小寫字母和大寫字母:[0-9a-zA-Z]

(3)在正則中使用 \ 就可以進行對特殊符號進行轉義 匹配-:-

(4)[]字符組中可以放多個條件例如酝陈,想要匹配數(shù)字和小寫字母可以這樣寫:[0-9a-z]

(5)字符串開頭使用^實現(xiàn)取反

在字符數(shù)組開頭使用 ^ 字符實現(xiàn)取反操作 n【^e】 的意思就是n后面的字母不能為 e

(6)\w:任意字符

\w:與任意單詞字符匹配:即【0-9】床玻,【a-z】,【A-Z】沉帮,_(下劃線)

(7)\d:與任意數(shù)字匹配

(8)\s:匹配空格

\s快捷方式可以匹配空白字符锈死,比如空格贫堰,tab、換行等待牵。

(9)\s【^D】:空白字符后面不跟D

(10)\b 匹配的是單詞的邊界

(11)快捷方法取反:小寫改大寫

快捷方式也可以取反其屏,例如對于\w的取反為\W,將小寫改寫成大寫即可缨该,其他快捷方式也遵循這個規(guī)則偎行。

(12)^區(qū)間內(nèi)取反,^區(qū)間外表字符串開始

^在區(qū)間里面是取反压彭,在區(qū)間外邊表示一個字符串的開始 ^字符串

(13)$表示字符串結尾

在區(qū)間外部后邊寫$,表示一個字符串的結尾 字符串$

(14).為任意字符

.是任意字符睦优,只能出現(xiàn)在方括號之外,.字符只有一個不能匹配的字符壮不,也就是換行符(\n)

(15)汗盘?是可選字符

,字符后加询一?隐孽,表示該字符可出現(xiàn)可不出現(xiàn),即健蕊?用于匹配它之前的字符0次或1次

(16){M菱阵,N}:重復區(qū)間

不知道具體要匹配字符組要重復的次數(shù)時使用重復區(qū)間,語法:{M,N}缩功,M是下界而N是上界

\d{3,4} 既可以匹配3個數(shù)字也可以匹配4個數(shù)字晴及,不過當有4個數(shù)字的時候,優(yōu)先匹配的是4個數(shù)字嫡锌,這是因為正則表達式默認是貪婪模式虑稼,即盡可能的匹配更多字符,而要使用非貪婪模式势木,我們要在表達式后面加上 ?號蛛倦。

(17)開區(qū)間:\d{n,} 閉區(qū)間不寫即可表示匹配一個或無數(shù)個。

+ 匹配1個到無數(shù)個啦桌,使用 *代表0個到無數(shù)個

+等價于{1,}溯壶,*等價于{0,}。

正則總結:

實例 描述

[Pp]ython 匹配 “Python” 或 “python”甫男。

rub[ye] 匹配 “ruby” 或 “rube”且改。

[abcdef] 匹配中括號內(nèi)的任意一個字母。

[0-9] 匹配任何數(shù)字板驳。類似于 [0123456789]钾虐。

[a-z] 匹配任何小寫字母。

[A-Z] 匹配任何大寫字母笋庄。

[a-zA-Z0-9] 匹配任何字母及數(shù)字效扫。

[^au] 除了au字母以外的所有字符。

[^0-9] 匹配除了數(shù)字外的字符直砂。

實例 描述

. 匹配除 “\n” 之外的任何單個字符菌仁。要匹配包括 ‘\n’ 在內(nèi)的任何字符,請使用象 ‘[.\n]’ 的模式静暂。

济丘? 匹配一個字符零次或一次,另一個作用是非貪婪模式

+ 匹配1次或多次

* 匹配0次或多次

\b 匹配單詞的邊界

\d 匹配一個數(shù)字字符洽蛀。等價于 [0-9]摹迷。匹配多個數(shù)字字符:\d{n}

\D 匹配一個非數(shù)字字符,等價于 0-9郊供。

\s 匹配任何空白字符峡碉,包括空格、制表符驮审、換頁符等等鲫寄。等價于 [ \f\n\r\t\v]。

\S 匹配任何非空白字符疯淫。等價于 \f\n\r\t\v地来。

\w 匹配包括下劃線的任何單詞字符。等價于’[A-Za-z0-9_]’熙掺。

\W 匹配任何非單詞字符未斑。等價于 ‘A-Za-z0-9_‘。

17.正則進階:

(1)使用()提取分組:

提取分組使用()即可币绩,分組的功能——捕獲數(shù)據(jù)

(2)|是或者

或者:使用分組的同時還可以使用或者蜡秽,即|

例如:正則表達式提取所有的視頻文件的后綴 \w{0,8}(.mp4|.avi|.wmv|.rmvb)

(3)非捕獲分組(?:表達式),可使用可不用

當并不需要捕獲某個分組的內(nèi)容类浪,但是又想使用分組的特性的時候就可以使用非捕獲組(?:表達式)载城,從而不捕獲數(shù)據(jù),還能使用分組的功能费就。此時也可以使用|

(4)分組使用技巧:

(\d{4})[-./\s]?(\d{1,2})[-./\s]?(\d{1,2}) 就可以從文本中將年月日分別提取出來了诉瓦。[-./\s]表示匹配三個可能出現(xiàn)的分隔符-./和空白,?表示匹配它們0次或者1次力细,其他年月日的數(shù)據(jù)使用\d{N}與分組結合就可以提取到目標數(shù)據(jù)睬澡。

(5)分組的回溯引用:

代碼0123< font >提示< /font >abcd 的正則表達式為:<\w+> .*? </\w+>

他的回溯引用為:<\w+> (.*?) </\1>

分組的回溯引用,使用\N可以引用編號為N的分組

18.拋出(throw)錯誤(err)

錯誤:當錯誤發(fā)生時眠蚂,js會生成一個錯誤消息煞聪,即JavaScript 將拋出(throw)一個錯誤。

try 語句測試代碼塊的錯誤逝慧。

catch 語句處理錯誤昔脯。 try 和 catch 是成對出現(xiàn)的

throw 語句創(chuàng)建自定義錯誤啄糙,結束處理。

finally 語句在 try 和 catch 語句之后云稚,無論是否有觸發(fā)異常隧饼,該語句都會執(zhí)行。

(1)err/error:錯誤静陈。

err對象屬性(是固定屬性):err.name(設置或返回一個錯誤名)和err.message(設置或返回一個錯誤信息)

var txt="";

function message()

{

? ? try { //測試錯誤

? ? ? ? adddlert("Welcome guest!");

? ? } catch(err) { //處理顯示錯誤燕雁,拋出錯誤

? ? ? ? txt="本頁有一個錯誤。\n\n";

? ? ? ? txt+="錯誤描述:" + err.message + "\n\n";

? ? ? ? txt+="點擊確定繼續(xù)鲸拥。\n\n";

? ? ? ? alert(txt);

? ? }

}

<button type="button" onclick="myFunction()">點我</button>

<p id="p01"></p>

<script>

function myFunction() {

? var message, x;

? message = document.getElementById("p01");

? message.innerHTML = "";

? x = document.getElementById("demo").value;

? try {

? ? if(x == "") throw "值是空的";

? ? if(isNaN(x)) throw "值不是一個數(shù)字";

? ? x = Number(x);

? ? if(x > 10) throw "太大";

? ? if(x < 5) throw "太小";

? }

? catch(err) {

? ? message.innerHTML = "錯誤: " + err + ".";

? }

}

</script>

18.變量提升:只有聲明的變量可以提升拐格,初始化過的變量無法提升

19.switch case 語句

switch case 語句:判斷一個變量與一系列值中某個值是否相等,每個值稱為一個分支

switch(expression){

? ? case value :

? ? ? //語句

? ? ? break; //可選

? ? case value :

? ? ? //語句

? ? ? break; //可選

? ? //你可以有任意數(shù)量的case語句

? ? default : //可選

? ? ? //語句

}

switch case 執(zhí)行時刑赶,一定會先進行匹配捏浊,匹配成功返回當前 case 的值,再根據(jù)是否有 break角撞,判斷是否繼續(xù)輸出呛伴,或是跳出判斷。

switch 語句會使用恒等計算符(===)進行比較,如果進行比較的兩字符數(shù)據(jù)類型不相等,返回false

20.加法與連接:數(shù)字1+數(shù)字2輸出加法凝果,數(shù)字1+字符1=兩字符連接。

1+2=3姐军,1+“2”=12

21.出現(xiàn)return,自動默認結束語句尖淘,返回值

22.數(shù)組不支持使用名字作為索引奕锌,只支持使用數(shù)字進行索引,對象使用名字進行索引

定義數(shù)組元素時村生,數(shù)組最后不能添加逗號惊暴。var colors = [5, 6, 7,]; //這樣數(shù)組的長度可能為3 也可能為4。

23.表單驗證:

<script>

function validateForm() {//表單驗證的方法函數(shù)

//document.forms趁桃,獲取頁面表單

? ? var x = document.forms["myForm"]["fname"].value;//獲取表單輸入的值辽话,處理input輸入的值

? ? if (x == null || x == "") {

? ? ? ? alert("需要輸入名字。");

? ? ? ? return false;//阻止表單提交

? ? }

}

</script>

<body>

<form name="myForm" action="demo_form.php"

onsubmit="return validateForm()" method="post">

名字: <input type="text" name="fname">

<input type="submit" value="提交">

</form>

</body>

注釋:form name="myForm":name值為“myForm”的表單

? ? action="demo_form.php":發(fā)送表單數(shù)據(jù)到文件中,連接外部文件(處理輸入)

? ? οnsubmit="return validateForm()":onsubmit會在表單中的確認按鈕被點擊時發(fā)生(手動驗證表單)

? ? 表單自動驗證:required="required":點擊提交按鈕卫病,如果輸入框是空的油啤,瀏覽器會提示錯誤信息。 如果表單字段 (fname) 的值為空, required 屬性會阻止表單提交

? ? method="post"表示表單中的數(shù)據(jù)以post方法傳遞蟀苛。Form提供了兩種數(shù)據(jù)傳輸?shù)姆绞健猤et和post益咬。

indexOf() 和lastIndexOf() 方法:

indexOf() 方法:可返回某個指定的字符串值在字符串中首次出現(xiàn)的位置,如果要檢索的字符串值沒有出現(xiàn)帜平,則該方法返回 -1幽告。

lastIndexOf() 方法可返回一個指定的字符串值最后出現(xiàn)的位置梅鹦,在一個字符串中的指定位置從后向前搜索。如果要檢索的字符串值沒有出現(xiàn)评腺,則該方法返回 -1帘瞭。

24.API約束驗證:約束驗證 API用于在將值提交到服務器之前檢查用戶已輸入到表單控件中的值。

<input id="id1" type="number" min="100" max="300" required>

var demo = document.getElementById("id1");

if (demo.checkValidity() == false) {//checkValidity()如果 input 元素中的數(shù)據(jù)是合法的返回 true蒿讥,否則返回 false。

? document.getElementById("demo").innerHTML = demo.validationMessage;//validationMessage:瀏覽器提示錯誤信息

? ? ? ? }

25.let和const

let:let 聲明的變量只在 let 命令所在的代碼塊 {} 內(nèi)有效抛腕,在 {} 之外不能訪問芋绸。

var x = 10;

// 這里輸出 x 為 10

{

? ? let x = 2;

? ? // 這里輸出 x 為 2

}

// 這里輸出 x 為 10

let 關鍵字定義的變量則不可以在使用后聲明,也就是變量需要先聲明再使用担敌。

const:const 用于聲明一個或多個常量摔敛,聲明時必須進行初始化,且初始化后的值不可再修改全封,const 定義的變量并非常量马昙,并非不可變,它定義了一個常量引用一個值刹悴。使用 const 定義的對象屬性或者數(shù)組是可變的

const不能對常量對象/數(shù)組重新賦值行楞,但是可以對常量數(shù)組進行修改

// 創(chuàng)建常量對象

const car = {type:"Fiat", model:"500", color:"white"};

// 修改屬性:

car.color = "red";

// 添加屬性

car.owner = "Johnson";

const 關鍵字定義的變量則不可以在使用后聲明,也就是變量需要先聲明再使用土匀。

26.id定位:

<!--a標簽的href屬性指定要跳轉的錨點-->

< a href="#pos">點我定位到指定位置!</a>

< p id="pos">尾部定位點</p>

27.異步編程

:setTimeout(第一個參數(shù)是個回調(diào)函數(shù)(箭頭函數(shù))子房,第二個參數(shù)是毫秒數(shù))

回調(diào)函數(shù):

setTimeout(function () {

? ? document.getElementById("demo").innerHTML="RUNOOB!";

}, 3000);

箭頭函數(shù):

setTimeout(()=> {

? ? document.getElementById("demo").innerHTML="RUNOOB!";

}, 3000);

28.函數(shù)自調(diào)用

:表達式后面緊跟 () ,則會自動調(diào)用

(function () {

? ? var x = "Hello!!";? ? ? // 我將調(diào)用自己

})();

29.函數(shù)顯式參數(shù)在函數(shù)定義時列出就轧。函數(shù)隱式參數(shù)在函數(shù)調(diào)用時傳遞給函數(shù)真正的值证杭。

函數(shù)可以自帶參數(shù)

<script>

function myFunction(x, y = 10) {

? ? // 如果不傳入?yún)?shù) y ,則其默認值為 10

? ? return x + y;

}

// 輸出 2

document.getElementById("demo1").innerHTML = myFunction(0, 2) ;

// 輸出 15, y 參數(shù)的默認值

document.getElementById("demo2").innerHTML = myFunction(5);

</script>

30.arguments:通過索引引用參數(shù)的類數(shù)組對象

arguments:類似于數(shù)組妒御,arguments對象是所有函數(shù)中可用的局部變量解愤。你可以使用arguments對象在函數(shù)中引用函數(shù)的參數(shù)。當我們不確定有多少個參數(shù)傳遞的時候乎莉,可以用 arguments 來獲取送讲。在 JavaScript 中,arguments 實際上它是當前函數(shù)的一個內(nèi)置對象梦鉴。

所有函數(shù)都內(nèi)置了一個 arguments 對象李茫,arguments 對象中存儲了傳遞的所有實參。

arguments展示形式是一個偽數(shù)組肥橙,具有 length 屬性魄宏,可以進行遍歷。

如果一個函數(shù)傳遞了三個參數(shù)存筏,你可以以如下方式引用他們:

arguments[0]

arguments[1]

arguments[2]

31.閉包:

在一個函數(shù)內(nèi)部定義另外一個函數(shù)宠互,并且返回內(nèi)部函數(shù)或者立即執(zhí)行內(nèi)部函數(shù)味榛。

內(nèi)部函數(shù)可以讀取外部函數(shù)定義的局部變量

如果我們在js中寫的方法都是全局的方法,在需要嵌入到別人的界面中的時候予跌,這些全局的東西很可能會和別人的東西重名從而引發(fā)錯誤搏色,所以說需要用js閉包包起來。

我的理解是券册,閉包就是能夠讀取其他函數(shù)內(nèi)部變量的函數(shù)频轿。

32.constructor():類的構造函數(shù)

類:類是用于創(chuàng)建對象的模板。使用 class 關鍵字來創(chuàng)建類烁焙,類體在一對大括號 {} 中航邢, {} 中定義類成員的位置,如方法或構造函數(shù)骄蝇。

每個類中包含了一個特殊的方法 constructor()膳殷,即類的構造器,它是類的構造函數(shù)九火,這種方法用于創(chuàng)建和初始化一個由 class 創(chuàng)建的對象赚窃。使用前沒有聲明會報錯

<script>

? class Runoob {

? constructor(name, url) {

? ? this.name = name;

? ? this.url = url;

? }

}//創(chuàng)建了一個名為Runoob的類,初始化了name和url兩個屬性

let site = new Runoob("菜鳥教程",? "http://www.runoob.com");//定義好類之后使用new創(chuàng)建對象

document.getElementById("demo").innerHTML =

site.name + ":" + site.url;//對象可以使用類中初始化的屬性

</script>

構造方法是一種特殊的方法:

構造方法名為 constructor()岔激。

構造方法在創(chuàng)建新對象時會自動執(zhí)行勒极。

構造方法用于初始化對象屬性。

如果不定義構造方法鹦倚,JavaScript 會自動添加一個空的構造方法河质。

類聲明和類表達式的主體都執(zhí)行在嚴格模式下,不能使用沒有聲明的變量

33.super類繼承

類繼承:類繼承使用extends關鍵字震叙,super()方法調(diào)用父類的構造函數(shù)掀鹅,

// 基類

class Animal {

? ? // eat() 函數(shù)

? ? // sleep() 函數(shù)

};

//派生類

class Dog extends Animal {

? ? // bark() 函數(shù)

};

super() 方法引用父類的構造方法。

通過在構造方法中調(diào)用 super() 方法媒楼,我們調(diào)用了父類的構造方法乐尊,這樣就可以訪問父類的屬性和方法

class Runoob extends Site {

? constructor(name, age) {

? ? super(name);

? ? this.age = age;

? }

setter和getter

setter和getter:getter是獲取屬性的方法,setter是設置屬性的方法划址。

class Runoob {

? constructor(name) {

? ? this.sitename = name;

? }

? get s_name() {

? ? return this.sitename;

? }

? set s_name(x) {

? ? this.sitename = x;

? }

}

let noob = new Runoob("菜鳥教程");

document.getElementById("demo").innerHTML = noob.s_name;

靜態(tài)方法

靜態(tài)方法:靜態(tài)方法是使用 static 關鍵字修飾的方法扔嵌,又叫類方法,屬于類的夺颤,但不屬于對象痢缎,在實例化對象之前可以通過 類名.方法名 調(diào)用靜態(tài)方法。靜態(tài)方法不能在對象上調(diào)用世澜,只能在類中調(diào)用独旷。實例對象調(diào)用靜態(tài)方法會報錯,如果你想在實例對象 中使用靜態(tài)方法,可以將實例對象作為一個參數(shù)傳遞給靜態(tài)方法

javascript前端開發(fā)語言

發(fā)布于2023-04-09

著作權歸作者所有

?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末嵌洼,一起剝皮案震驚了整個濱河市案疲,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌麻养,老刑警劉巖褐啡,帶你破解...
    沈念sama閱讀 222,104評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異鳖昌,居然都是意外死亡备畦,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,816評論 3 399
  • 文/潘曉璐 我一進店門遗遵,熙熙樓的掌柜王于貴愁眉苦臉地迎上來萍恕,“玉大人,你說我怎么就攤上這事车要。” “怎么了崭倘?”我有些...
    開封第一講書人閱讀 168,697評論 0 360
  • 文/不壞的土叔 我叫張陵翼岁,是天一觀的道長。 經(jīng)常有香客問我司光,道長琅坡,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,836評論 1 298
  • 正文 為了忘掉前任残家,我火速辦了婚禮榆俺,結果婚禮上,老公的妹妹穿的比我還像新娘坞淮。我一直安慰自己茴晋,他們只是感情好,可當我...
    茶點故事閱讀 68,851評論 6 397
  • 文/花漫 我一把揭開白布回窘。 她就那樣靜靜地躺著诺擅,像睡著了一般。 火紅的嫁衣襯著肌膚如雪啡直。 梳的紋絲不亂的頭發(fā)上烁涌,一...
    開封第一講書人閱讀 52,441評論 1 310
  • 那天,我揣著相機與錄音酒觅,去河邊找鬼撮执。 笑死,一個胖子當著我的面吹牛舷丹,可吹牛的內(nèi)容都是我干的抒钱。 我是一名探鬼主播,決...
    沈念sama閱讀 40,992評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼继效!你這毒婦竟也來了症杏?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 39,899評論 0 276
  • 序言:老撾萬榮一對情侶失蹤瑞信,失蹤者是張志新(化名)和其女友劉穎厉颤,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體凡简,經(jīng)...
    沈念sama閱讀 46,457評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡逼友,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,529評論 3 341
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了秤涩。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片帜乞。...
    茶點故事閱讀 40,664評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖筐眷,靈堂內(nèi)的尸體忽然破棺而出黎烈,到底是詐尸還是另有隱情,我是刑警寧澤匀谣,帶...
    沈念sama閱讀 36,346評論 5 350
  • 正文 年R本政府宣布照棋,位于F島的核電站,受9級特大地震影響武翎,放射性物質發(fā)生泄漏烈炭。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 42,025評論 3 334
  • 文/蒙蒙 一宝恶、第九天 我趴在偏房一處隱蔽的房頂上張望符隙。 院中可真熱鬧,春花似錦垫毙、人聲如沸霹疫。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,511評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽更米。三九已至,卻和暖如春毫痕,著一層夾襖步出監(jiān)牢的瞬間征峦,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,611評論 1 272
  • 我被黑心中介騙來泰國打工消请, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留栏笆,地道東北人。 一個月前我還...
    沈念sama閱讀 49,081評論 3 377
  • 正文 我出身青樓臊泰,卻偏偏與公主長得像蛉加,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,675評論 2 359

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