2021-11-29

十二、類和對象進(jìn)階2

1.自執(zhí)行方法

定義一個自執(zhí)行函數(shù)截珍,函數(shù)定義完成后攀甚,自己執(zhí)行一次,函數(shù)名可以省略岗喉,因為沒有任何意義

注意:要以分號結(jié)束秋度,否則可能會影響后面的語句。

(function sayHello() {

? ? console.log('sayHello');

})();

自執(zhí)行函數(shù)的簡寫形式

+ function sayYes() {

? ? console.log('sayYes');

}();

自執(zhí)行函數(shù)钱床,也可以直接定義成箭頭函數(shù)

(()=>{

? ? console.log('aaa');

})()

<!DOCTYPE html>

<html>

<head>

? ? <meta charset="UTF-8">

? ? <meta http-equiv="X-UA-Compatible" content="IE=edge">

? ? <meta name="viewport" content="width=device-width, initial-scale=1.0">

? ? <title>自執(zhí)行函數(shù)</title>

</head>

<body>

? ? <script>

? ? ? ? function fun(){

? ? ? ? ? ? console.log('Hello');

? ? ? ? }

? ? ? ? fun();

? ? ? ? //自執(zhí)行函數(shù)

? ? ? ? // 注意:要以分號結(jié)束荚斯,否則可能會影響后面的語句。

? ? ? ? (function fun2(){

? ? ? ? ? ? console.log('你好');

? ? ? ? })();

? ? ? ? //+號是自執(zhí)行函數(shù)的簡寫

? ? ? ? +function fun3(){

? ? ? ? ? ? console.log('你好查牌,中國');

? ? ? ? }();

? ? ? ? (()=>{

? ? ? ? ? ? console.log('你好事期,迪麗熱巴');

? ? ? ? })();


? ? </script>

</body>

</html>

2.rest參數(shù)

// ...args 就是rest參數(shù)

function fun1(a,b,c,...args){

? ? console.log(a,b,c);

? ? // arguments 是一個類數(shù)組對象,結(jié)構(gòu)長得像數(shù)組纸颜,其實是一個object對象

? ? console.log(arguments);

? ? // rest參數(shù) 是一個數(shù)組對象兽泣,既然是數(shù)組,就可以直接使用數(shù)組的方法胁孙。

? ? console.log(args);

}

<!DOCTYPE html>

<html>

<head>

? ? <meta charset="UTF-8">

? ? <meta http-equiv="X-UA-Compatible" content="IE=edge">

? ? <meta name="viewport" content="width=device-width, initial-scale=1.0">

? ? <title>rest參數(shù)</title>

</head>

<body>

? ? <script>

? ? ? ? // 方法的形參前面添加...唠倦,就是方法的rest參數(shù)

? ? ? ? //...xxx 是函數(shù)的rest參數(shù),用于接收剩余的實參涮较,注意:通常情況下rest參數(shù)放在最后面

? ? ? ? //rest參數(shù)稠鼻,解決了函數(shù)中arguments對象不是數(shù)組類型的缺陷

? ? ? ? function fun1(a,b,c,...args){

? ? ? ? ? ? console.log(a,b,c);

? ? ? ? ? ? console.log(args);

? ? ? ? ? ? let arr = args.map(r=>r*2)

? ? ? ? ? ? console.log(arr);

? ? ? ? ? ? // console.log(arguments);

? ? ? ? }

? ? ? ? fun1(100,200,300)

? ? ? ? fun1(100)

? ? ? ? fun1(10,20,30,40,50,60,70,80)

? ? ? ? console.log('------------------------');

? ? ? ? // 在定義函數(shù)時,可以給參數(shù)設(shè)置默認(rèn)值

? ? ? ? function fun2(a,b=200,c=300){

? ? ? ? ? ? console.log(a,b,c);

? ? ? ? }

? ? ? ? fun2(1,2,3)

? ? ? ? fun2(1,2)

? ? ? ? fun2(1)

? ? ? ? fun2()

? ? </script>

</body>

</html>

3.展開運算符

展開運算符就是...狂票,可以將一個數(shù)組全部展開

let arr3 = [...arr1,...arr2]

展開運算符候齿,可以展開對象的全部成員,也可以將一個對象的成員闺属,克隆給另一個對象

let lh2 = {...lh}

展開運算符慌盯,可以將多個對象的成員,合并到一個大的對象中屋剑,后面對象中的成員润匙,如果跟前面對象中的成員同名,會覆蓋前面的

let lxt = {...lh,...gxt}

<!DOCTYPE html>

<html>

<head>

? ? <meta charset="UTF-8">

? ? <meta http-equiv="X-UA-Compatible" content="IE=edge">

? ? <meta name="viewport" content="width=device-width, initial-scale=1.0">

? ? <title>展開運算符</title>

</head>

<body>

? ? <script>

? ? ? ? let arr1 = [11,22,33]

? ? ? ? let arr2 = [44,55,66]

? ? ? ? let arr3 = arr1.concat(arr2)

? ? ? ? console.log(arr3);

? ? ? ? // ...在這里就是展開運算符唉匾,在這里孕讳,展開運算符用于展開數(shù)組中的所有成員匠楚。

? ? ? ? let arr4 = [...arr1,...arr2]

? ? ? ? console.log(arr4);

? ? ? ? console.log('---------------------------');

? ? ? ? let obj1 = {

? ? ? ? ? ? a:100,

? ? ? ? ? ? b:200

? ? ? ? }

? ? ? ? let obj2 = {

? ? ? ? ? ? c:300,

? ? ? ? ? ? d:400,

? ? ? ? ? ? a:500

? ? ? ? }

? ? ? ? // ...在這里,用于將對象的所有屬性展開厂财,并返回一個全新的對象

? ? ? ? let obj3 = {...obj1,...obj2}

? ? ? ? console.log(obj3);? ? ? ?

? ? </script>

</body>

</html>

4.解構(gòu)賦值

ES6中的解構(gòu)賦值語句芋簿,可以直接將數(shù)組中的每個元素提取出來

方式是:let [變量名1,變量名2,...] = 數(shù)組

ES6中的解構(gòu)賦值語句,可以直接將對象中的每個元素提取出來

方式是:let {name,age,gender,job} = obj

通常情況下璃饱,對象的屬性名稱叫什么与斤,就定義什么名稱的變量去接,如果出現(xiàn)了同名荚恶,可以修改名稱

方式是:let {name,age:age1,gender,job} = obj

在ES6中撩穿,定義對象時,屬性的左右兩邊的表達(dá)式相同時谒撼,可以省略右邊的表達(dá)式食寡,該對象在定義的時候,會自動往父級作用域?qū)ふ彝麑傩悦麑?yīng)的值

<!DOCTYPE html>

<html>

<head>

? ? <meta charset="UTF-8">

? ? <meta http-equiv="X-UA-Compatible" content="IE=edge">

? ? <meta name="viewport" content="width=device-width, initial-scale=1.0">

? ? <title>解構(gòu)賦值</title>

</head>

<body>

? ? <script>

? ? ? ? //定義變量

? ? ? ? let no = 1001

? ? ? ? let name = '小明'

? ? ? ? let age = 30

? ? ? ? let sex = '男'

? ? ? ? //定義對象

? ? ? ? let stu1 = {

? ? ? ? ? ? //屬性名:屬性值

? ? ? ? ? ? //這里的屬性值是上面定義的變量保存的值

? ? ? ? ? ? no:no,

? ? ? ? ? ? name:name,

? ? ? ? ? ? age:age,

? ? ? ? ? ? sex:sex

? ? ? ? }

? ? ? ? console.log(stu1);

? ? ? ? console.log('-----------------');

? ? ? ? //對象的屬性名和屬性值的標(biāo)識相同時廓潜,可以省略屬性值

? ? ? ? let stu2 = {

? ? ? ? ? ? // 是no:no的簡寫

? ? ? ? ? ? no,

? ? ? ? ? ? name,

? ? ? ? ? ? age,

? ? ? ? ? ? sex

? ? ? ? }

? ? ? ? console.log(stu2);

? ? ? ? console.log('--------------------------------------');

? ? ? ? let stu3 = {

? ? ? ? ? ? username:'小明',

? ? ? ? ? ? userage:30,

? ? ? ? ? ? usersex:'男',

? ? ? ? ? ? car:{

? ? ? ? ? ? ? ? carName:'奔馳',

? ? ? ? ? ? ? ? carPrice:'100W'

? ? ? ? ? ? }

? ? ? ? }

? ? ? ? //過去我們這樣寫

? ? ? ? // let username = stu3.username

? ? ? ? // let userage = stu3.userage

? ? ? ? // let usersex = stu3.usersex

? ? ? ? //現(xiàn)在我們這樣寫(解構(gòu)賦值)

? ? ? ? // usersex:usersex2 表示在解構(gòu)的時候?qū)ψ兞棵M(jìn)行重命名

? ? ? ? let {username,userage,usersex:usersex2} = stu3

? ? ? ? console.log(username,userage,usersex2);

? ? ? ? console.log('-----------');

? ? ? ? // let {car} = stu3

? ? ? ? // let {carName,carPrice} = car

? ? ? ? let {car:{carName,carPrice}} = stu3? //這一行代碼抵皱,最終會編譯成下面的兩行代碼

? ? ? ? // let carName = stu3.car.carName

? ? ? ? // let carPrice = stu3.car.carPrice

? ? ? ? console.log(carName,carPrice);

? ? ? ? let arr = [11,22,33,44,55]

? ? ? ? // 解構(gòu)數(shù)組中的元素,采用的[]

? ? ? ? let [a,b] = arr

? ? ? ? console.log(a,b);

? ? </script>

</body>

</html>

5.值類型和引用類型

在js中辩蛋,number呻畸,string,boolean悼院,都是值類型伤为,值類型的變量,直接將數(shù)據(jù)保存到內(nèi)存的椨8颍空間中钮呀。值類型的變量剑鞍,在傳遞時昨凡,傳的是副本。

在js中蚁署,對象便脊,數(shù)組,都是引用類型光戈,引用類型的變量哪痰,將數(shù)據(jù)保存在堆中,然后將堆的地址保存到棧中久妆。

<!DOCTYPE html>

<html lang="en">

<head>

? ? <meta charset="UTF-8">

? ? <meta http-equiv="X-UA-Compatible" content="IE=edge">

? ? <meta name="viewport" content="width=device-width, initial-scale=1.0">

? ? <title>值類型和引用類型</title>

</head>

<body>

? ? <script>

? ? ? ? function upateNum(num2){

? ? ? ? ? ? console.log('num2='+num2);

? ? ? ? ? ? num2+=5

? ? ? ? ? ? console.log('num2='+num2);

? ? ? ? }

? ? ? ? let num1 = 5? //number類型

? ? ? ? // 值類型在調(diào)用方法傳遞是晌杰,傳的是值

? ? ? ? upateNum(num1)

? ? ? ? console.log('num1='+num1);//可以看出num1的值沒變

? ? ? ? console.log('-------------------------');

? ? ? ? function updateArr(arr2){

? ? ? ? ? ? console.log('arr2',arr2);//[11,22,33,44,55]

? ? ? ? ? ? arr2.push(66)//[11,22,33,44,55,66]

? ? ? ? ? ? console.log('arr2',arr2);//[11,22,33,44,55,66]

? ? ? ? }

? ? ? ? //數(shù)組是引用類型

? ? ? ? let arr1 = [11,22,33,44,55]

? ? ? ? updateArr(arr1)

? ? ? ? console.log('arr1',arr1);//此時arr1與arr2的值都變了=>[11,22,33,44,55,66]

? ? </script>

</body>

</html>

6.原型對象

prototype屬性是類的原型對象。通常情況下筷弦,我們習(xí)慣將類的方法肋演,定義到類的原型對象中抑诸,這樣做的好處是,提高代碼的利用率爹殊,不會開辟多余的內(nèi)存空間蜕乡。

__proto__屬性是對象的原型對象,注意:同種類型多個對象上的原型對象 共同指向類型上的原型對象梗夸。類的原型對象上面的方法层玲,類的對象,可以直接調(diào)用

<!DOCTYPE html>

<html>

<head>

? ? <meta charset="UTF-8">

? ? <meta http-equiv="X-UA-Compatible" content="IE=edge">

? ? <meta name="viewport" content="width=device-width, initial-scale=1.0">

? ? <title>原型對象</title>

</head>

<body>

? ? <script>

? ? ? ? // 構(gòu)造函數(shù)(類)有原型對象反症,其實就是構(gòu)造函數(shù)身上的一個自帶屬性辛块,這個屬性是:prototype

? ? ? ? // 對象也有原型對象,其實就是對象身上的一個自帶屬性铅碍,這個屬性是:__proto__

? ? ? ? // 所有同類型的對象身上的原型對象屬性憨降,都指向類的原型對象屬性。

? ? ? ? // 類和對象的原型對象身上掛的方法该酗,對象可以直接使用授药,不需要經(jīng)過原型對象。

? ? ? ? function Student(name,age,sex){

? ? ? ? ? ? this.name = name

? ? ? ? ? ? this.age = age

? ? ? ? ? ? this.sex = sex

? ? ? ? ? ? // 如果將方法直接定義在類里面呜魄,將來根據(jù)這個類創(chuàng)建的每個對象悔叽,都要創(chuàng)建自己獨立的這些方法

? ? ? ? ? ? // 如果要創(chuàng)建很多對象,對內(nèi)存的開銷會很大爵嗅。

? ? ? ? ? ? /* this.sayHi = function(){

? ? ? ? ? ? ? ? console.log(`Hi娇澎!我叫${this.name},今年${this.age}歲睹晒,性別是${this.sex}`);

? ? ? ? ? ? }

? ? ? ? ? ? this.study = function(time){

? ? ? ? ? ? ? ? console.log(`Hi趟庄!我叫${this.name},我每天學(xué)習(xí)${time}小時`);

? ? ? ? ? ? }

? ? ? ? ? ? this.play = function(time){

? ? ? ? ? ? ? ? console.log(`Hi伪很!我叫${this.name}戚啥,我每天玩${time}小時`);

? ? ? ? ? ? } */

? ? ? ? }

? ? ? ? // 我們可以將類的方法,添加到類的原型對象身上

? ? ? ? Student.prototype.sayHi = function(){

? ? ? ? ? ? console.log(`Hi锉试!我叫${this.name}猫十,今年${this.age}歲,性別是${this.sex}`);

? ? ? ? }

? ? ? ? Student.prototype.study = function(time){

? ? ? ? ? ? console.log(`Hi呆盖!我叫${this.name}拖云,我每天學(xué)習(xí)${time}小時`);

? ? ? ? }

? ? ? ? Student.prototype.play = function(time){

? ? ? ? ? ? console.log(`Hi!我叫${this.name}应又,我每天玩${time}小時`);

? ? ? ? }

? ? ? ? let s1 = new Student('張三',20,'男')

? ? ? ? let s2 = new Student('李四',22,'女')

? ? ? ? let s3 = new Student('王五',24,'男')

? ? ? ? // 查看Student類的原型對象

? ? ? ? console.log(Student.prototype);

? ? ? ? // 查看三個對象的原型對象,一模一樣宙项。

? ? ? ? console.log(s1.__proto__);

? ? ? ? console.log(s2.__proto__);

? ? ? ? console.log(s3.__proto__);

? ? ? ? s1.sayHi()

? ? ? ? s1.study(8)

? ? ? ? s1.play(3)

? ? ? ? console.log('------------------');

? ? ? ? s2.sayHi()

? ? ? ? s2.study(6)

? ? ? ? s2.play(6)

? ? ? ? console.log('------------------');

? ? ? ? s3.sayHi()

? ? ? ? s3.study(10)

? ? ? ? s3.play(1)


? ? </script>

</body>

</html>

7.ES6中定義類的新語法

// 定義一個Person類型

class Person{

? ? // 構(gòu)造函數(shù)

? ? constructor(name,age,gender){

? ? ? ? this.name = name,

? ? ? ? this.age = age

? ? ? ? this.gender = gender

? ? }

? ? // 給類添加一個方法

? ? sayHi = function(){

? ? ? ? console.log(this.name,this.age,this.gender);

? ? }

? ? //用這種方式定義的方法,是將方法定義的類的原型對象中去

? ? sayHello(){

? ? ? ? console.log('hello!');

? ? }

}

8.繼承

<!DOCTYPE html>

<html lang="en">

<head>

? ? <meta charset="UTF-8">

? ? <meta http-equiv="X-UA-Compatible" content="IE=edge">

? ? <meta name="viewport" content="width=device-width, initial-scale=1.0">

? ? <title>Document</title>

</head>

<body>

? ? <script>

? ? ? ? //ES5:

? ? ? ? // 定義一個人類

? ? ? ? function Person1(name, age, gender) {

? ? ? ? ? ? this.name = name

? ? ? ? ? ? this.age = age

? ? ? ? ? ? this.gender = gender

? ? ? ? }

? ? ? ? Person1.prototype.eat = function () {

? ? ? ? ? ? console.log(`我叫${this.name},我在吃飯...`);

? ? ? ? }

? ? ? ? Person1.prototype.say = function () {

? ? ? ? ? ? console.log(`大家好株扛!我叫${this.name} 今年${this.age}歲 性別是${this.gender}`);

? ? ? ? }

? ? ? ? // 通過Person類型尤筐,創(chuàng)建出了兩個對象

? ? ? ? let p1 = new Person1('張三', 20, '男')

? ? ? ? p1.say()

? ? ? ? p1.eat()

? ? ? ? let p2 = new Person1('李四', 21, '男')

? ? ? ? p2.say()

? ? ? ? p2.eat()

? ? ? ? console.log('-------------------------------------');

? ? ? ? //定義了學(xué)生類

? ? ? ? function Student1(name, age, gender, no) {

? ? ? ? ? ? // 繼承Person類的屬性

? ? ? ? ? ? Person1.call(this, name, age, gender)

? ? ? ? ? ? // Student類特有的屬性

? ? ? ? ? ? this.no = no

? ? ? ? }

? ? ? ? // 給Student類的prototype屬性 new一個Person類型的對象

? ? ? ? // 用于繼承Person類的方法

? ? ? ? Student1.prototype = new Person1()

? ? ? ? Student1.prototype.study = function () {

? ? ? ? ? ? console.log(`我叫${this.name},我的學(xué)號是${this.no},我在學(xué)習(xí)...`);

? ? ? ? }

? ? ? ? let s1 = new Student1('王五', 20, '女', '1001')

? ? ? ? s1.study()

? ? ? ? s1.eat()

? ? ? ? s1.say()

? ? ? ? console.log("******************************************************");

? ? ? ? //ES6:

? ? ? ? // 定義人類

? ? ? ? class Person2 {

? ? ? ? ? ? // 定義構(gòu)造函數(shù)

? ? ? ? ? ? constructor(name, age, gender) {

? ? ? ? ? ? ? ? this.name = name

? ? ? ? ? ? ? ? this.age = age

? ? ? ? ? ? ? ? this.gender = gender

? ? ? ? ? ? }

? ? ? ? ? ? // 說話方法

? ? ? ? ? ? say() {

? ? ? ? ? ? ? ? console.log(`大家好邑贴!我叫${this.name} 今年${this.age}歲 性別是${this.gender}`);

? ? ? ? ? ? }

? ? ? ? ? ? // 吃方法

? ? ? ? ? ? eat() {

? ? ? ? ? ? ? ? console.log(`我叫${this.name},我在吃飯...`);

? ? ? ? ? ? }

? ? ? ? }

? ? ? ? // 每個類型都一個prototype屬性,我們稱它為類的原型對象叔磷。

? ? ? ? // 類的原型對象上面的成員拢驾,給類的所有實例(實例就是類創(chuàng)建出來的對象)共享。

? ? ? ? console.log(Person2.prototype);

? ? ? ? // 通過Person類型改基,創(chuàng)建出了兩個對象

? ? ? ? let p3 = new Person2('張三', 20, '男')

? ? ? ? console.log(p3);

? ? ? ? p3.say()

? ? ? ? p3.eat()

? ? ? ? let p4 = new Person2('李四', 21, '男')

? ? ? ? console.log(p4);

? ? ? ? p4.say()

? ? ? ? p4.eat()

? ? ? ? console.log('-------------------------------------');

? ? ? ? // extends關(guān)鍵字繁疤,表示繼承

? ? ? ? class Student2 extends Person2 {

? ? ? ? ? ? // 構(gòu)造函數(shù)

? ? ? ? ? ? constructor(name, age, gender, no) {

? ? ? ? ? ? ? ? // 調(diào)用父類的構(gòu)造函數(shù)

? ? ? ? ? ? ? ? super(name, age, gender)

? ? ? ? ? ? ? ? // 學(xué)生特有的屬性

? ? ? ? ? ? ? ? this.no = no

? ? ? ? ? ? }

? ? ? ? ? ? //學(xué)生學(xué)習(xí)的方法

? ? ? ? ? ? study() {

? ? ? ? ? ? ? ? console.log(`我叫${this.name},我的學(xué)號是${this.no},我在學(xué)習(xí)...`);

? ? ? ? ? ? }

? ? ? ? }

? ? ? ? let s2 = new Student2('王五', 20, '女', '1001')

? ? ? ? console.log(s2);

? ? ? ? s2.study()

? ? ? ? s2.eat()

? ? ? ? s2.say()

? ? </script>

</body>

</html>

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市秕狰,隨后出現(xiàn)的幾起案子稠腊,更是在濱河造成了極大的恐慌,老刑警劉巖鸣哀,帶你破解...
    沈念sama閱讀 222,000評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件架忌,死亡現(xiàn)場離奇詭異,居然都是意外死亡我衬,警方通過查閱死者的電腦和手機叹放,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,745評論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來挠羔,“玉大人井仰,你說我怎么就攤上這事∑萍樱” “怎么了俱恶?”我有些...
    開封第一講書人閱讀 168,561評論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長范舀。 經(jīng)常有香客問我合是,道長,這世上最難降的妖魔是什么锭环? 我笑而不...
    開封第一講書人閱讀 59,782評論 1 298
  • 正文 為了忘掉前任聪全,我火速辦了婚禮,結(jié)果婚禮上田藐,老公的妹妹穿的比我還像新娘荔烧。我一直安慰自己,他們只是感情好汽久,可當(dāng)我...
    茶點故事閱讀 68,798評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著踊餐,像睡著了一般景醇。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上吝岭,一...
    開封第一講書人閱讀 52,394評論 1 310
  • 那天三痰,我揣著相機與錄音吧寺,去河邊找鬼。 笑死散劫,一個胖子當(dāng)著我的面吹牛稚机,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播获搏,決...
    沈念sama閱讀 40,952評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼赖条,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了常熙?” 一聲冷哼從身側(cè)響起纬乍,我...
    開封第一講書人閱讀 39,852評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎裸卫,沒想到半個月后仿贬,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,409評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡墓贿,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,483評論 3 341
  • 正文 我和宋清朗相戀三年茧泪,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片聋袋。...
    茶點故事閱讀 40,615評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡调炬,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出舱馅,到底是詐尸還是另有隱情缰泡,我是刑警寧澤,帶...
    沈念sama閱讀 36,303評論 5 350
  • 正文 年R本政府宣布代嗤,位于F島的核電站棘钞,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏干毅。R本人自食惡果不足惜宜猜,卻給世界環(huán)境...
    茶點故事閱讀 41,979評論 3 334
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望硝逢。 院中可真熱鬧姨拥,春花似錦、人聲如沸渠鸽。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,470評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽徽缚。三九已至憨奸,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間凿试,已是汗流浹背排宰。 一陣腳步聲響...
    開封第一講書人閱讀 33,571評論 1 272
  • 我被黑心中介騙來泰國打工似芝, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人板甘。 一個月前我還...
    沈念sama閱讀 49,041評論 3 377
  • 正文 我出身青樓党瓮,卻偏偏與公主長得像,于是被迫代替她去往敵國和親盐类。 傳聞我的和親對象是個殘疾皇子寞奸,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,630評論 2 359

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

  • js中數(shù)組和對象的解構(gòu)賦值 1.Es6中的解構(gòu)語句,可以直接將數(shù)組中的每個元素提取出來...
    朱銀軍閱讀 186評論 0 0
  • - ECMAScript 與 Javascript - ECMAScript的發(fā)展過程 - ECMAScript2...
    爵跡01閱讀 228評論 0 1
  • 一傲醉、初識JavaScript JavaScript 是 Web 的編程語言蝇闭。 所有現(xiàn)代的 HTML 頁面都使用 J...
    是陽仔啊閱讀 503評論 0 0
  • ECMAScript和JavaScript ECMAScript是JavaScript的標(biāo)準(zhǔn)化規(guī)范,實際上Java...
    翔子丶閱讀 267評論 0 0
  • 原文地址:http://www.reibang.com/p/fd742b49a25c 1.1硬毕、什么是HTML語義...
    Daydream_許多閱讀 601評論 0 0