摘要:從入門到放棄是什么,黑歷史,不講,自己百度去。類你沒(méi)有看錯(cuò),這里面的就沒(méi)有問(wèn)題的。之前我們用過(guò),和有了,再也不用這兩個(gè)貨了。一個(gè)函數(shù),可以遍歷狀態(tài)感覺(jué)就是狀態(tài)機(jī),好吧不說(shuō)了再說(shuō)就懵逼了。
ES6從入門到放棄 1.ES6是什么,黑歷史,不講,自己百度去。 2.在瀏覽器中如何使用? 1.babel babeljs.io在線編譯 2.traceur-----Google出的編譯器,把ES6編譯成ES5
bootsrap 引導(dǎo)程序,和我們理解的bootstrap css那個(gè)框架沒(méi)有半毛錢關(guān)系。
3.es6新功能 1.定義變量
let 替代var 擁有塊級(jí)作用域。
2.const定義常量 常量不可以修改,如果修改會(huì)報(bào)錯(cuò)
3.字符串連接ES6管它叫模板引擎,其實(shí)就是字符串連接這個(gè)破玩意。
用鍵盤1左邊那個(gè)鍵,反引號(hào)。
var str = "帥";//注意這里是正常雙引號(hào) var str2 = `你們從我臉上看到了什么${str},難道不是么?`;4.解構(gòu)賦值
var [a,b,c] = [12,5,8]; console.log(a,b,c);//12,5,8 是不是很簡(jiǎn)潔?5.ES6新技巧 a)復(fù)制數(shù)組
arr2.from(arr)//再也不用用循環(huán)了,吼吼,還可不可以更性感一點(diǎn) arr2 = [...arr]//簡(jiǎn)直是bug級(jí)別的用法,不過(guò)真心簡(jiǎn)單b)for of循環(huán) c)map 、delete 6.箭頭函數(shù) 重點(diǎn),angular 2.x用的不少。
/*function show(a){ return a; } var s=show(12); alert(s);*/ var show=(a,b)=>a+b; var s=show(12,5);
相當(dāng)簡(jiǎn)單。
([param] [, param]) => { statements } param => expression
解釋:
param 是參數(shù),根據(jù)參數(shù)個(gè)數(shù)不同,分這幾種情況:
() => { … } // 零個(gè)參數(shù)用 () 表示
x => { … } // 一個(gè)參數(shù)可以省略 ()
(x, y) => { … } // 多參數(shù)不能省略 ()
var name="abb"; var age=101; var preson={ name, age, showName(){ return this.name; }, showAge(){ return this.age; } }; alert(preson.showName());
你沒(méi)有看錯(cuò),bug一樣的語(yǔ)法。
8.重中之重,不懂這個(gè)你徹底懵逼,完全看不懂a(chǎn)ngular2.x在干啥。類。類,真特么累,一個(gè)語(yǔ)法糖,廢柴,然而你還得懂。
class Person{ //類 constructor(name,age){ this.name=name; this.age=age; } showName(){ return this.name; } showAge(){ return this.age; } } var p1=new Person("aaa",10); alert(p1.showName());
你沒(méi)有看錯(cuò),這里面的this就沒(méi)有問(wèn)題的。玩類,不得不說(shuō)的一個(gè)東西就是繼承,這里得感謝ES6,我們?cè)僖膊挥?/p>
apply 和 constructor 混合的方式繼承了,太特么惡心了,直接用extend,鼓掌,送火箭。
class Person{ //類 constructor(name="default",age=0){ this.name=name; this.age=age; } showName(){ return this.name; } showAge(){ return this.age; } } //繼承 class Worker extends Person{ constructor(name,age,job="掃地的"){ super(name,age); this.job=job; } showJob(){ return this.job; } }
早特么應(yīng)該這么玩,話說(shuō)吐槽一下,敢不敢把construtor這么丑逼的東西給我換成真正的構(gòu)造函數(shù)?
再說(shuō)一個(gè)模塊化,前方高能,必須必須必須會(huì)!!否則你載angular2.x中連代碼你都組織不起來(lái),不知道你往哪里寫。
之前我們用過(guò)seajs,和require,有了ES6,再也不用這兩個(gè)貨了。
定義模塊
const a = 12; export a;
再來(lái)一個(gè)angular2.x中的例子
class hero{ //屬性 xxxx //方法 } exports hero;
怎么使用?
import modA from "./a.js"; import modB from "./b.js"; console.log(modA+modB);9.promise
如果你想玩一些新的庫(kù),肯定離不開(kāi)數(shù)據(jù)交互,外面炒的很火。
就是一個(gè)對(duì)象,用來(lái)傳遞異步操作的數(shù)據(jù)(消息)
pending(等待、處理中)—> Resolve(完成、fullFilled) —> Rejected(拒絕、失敗)
使用:
var p1=new Promise(function(resolve,reject){ //resolve 成功了 //reject 失敗了 }); var p1=new Promise(function(resolve,reject){ if(異步處理成功了){ resolve(成功數(shù)據(jù)) }else{ reject(失敗原因) } }); p1.then(成功(resolve),失敗(reject)) √ -------------------------------------------- p1.catch——用來(lái)捕獲錯(cuò)誤10.生成器Gennerator.
看起來(lái)挺懸,其實(shí)就是那么回事兒,我們看看是什么鬼。
一個(gè)函數(shù),可以遍歷狀態(tài),感覺(jué)就是狀態(tài)機(jī),好吧不說(shuō)了再說(shuō)就懵逼了。
語(yǔ)法:
function *show(){ }
注意:
a)函數(shù)名字前有星號(hào) b)內(nèi)部用yield c)next執(zhí)行下一個(gè)狀態(tài)function* show(){ yield "Hello"; yield "World"; yield "Es6"; return "well"; } var res=show(); console.log(res.next()); //{value:"Hello", done:false} console.log(res.next()); //{value:"World", done:false} console.log(res.next()); //{value:"Es5", done:false} console.log(res.next()); //{value:"well", done:true}
ES6基本上會(huì)這么多就可以了,剩下的時(shí)間就可以去泡妹子了,JS大法好,收工!
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/82501.html
摘要:如果遇到非常的復(fù)雜的匹配,正則表達(dá)式的優(yōu)勢(shì)就更加明顯了。關(guān)于正則表達(dá)式書(shū)寫規(guī)則,可查看,上面說(shuō)的很清楚了,我就不貼出來(lái)了。替換與正則表達(dá)式匹配的子串,并返回替換后的字符串。結(jié)語(yǔ)正則表達(dá)式并不難,懂了其中的套路之后,一切都變得簡(jiǎn)單了。 前言 在正文開(kāi)始前,先說(shuō)說(shuō)正則表達(dá)式是什么,為什么要用正則表達(dá)式?正則表達(dá)式在我個(gè)人看來(lái)就是一個(gè)瀏覽器可以識(shí)別的規(guī)則,有了這個(gè)規(guī)則,瀏覽器就可以幫我們判斷...
摘要:但監(jiān)聽(tīng)器要在事件源上實(shí)現(xiàn)接口也就是說(shuō),直接用一個(gè)類實(shí)現(xiàn)和接口是監(jiān)聽(tīng)不到內(nèi)對(duì)象的變化的。 什么是監(jiān)聽(tīng)器 監(jiān)聽(tīng)器就是一個(gè)實(shí)現(xiàn)特定接口的普通java程序,這個(gè)程序?qū)iT用于監(jiān)聽(tīng)另一個(gè)java對(duì)象的方法調(diào)用或?qū)傩愿淖儯?dāng)被監(jiān)聽(tīng)對(duì)象發(fā)生上述事件后,監(jiān)聽(tīng)器某個(gè)方法將立即被執(zhí)行。。 為什么我們要使用監(jiān)聽(tīng)器? 監(jiān)聽(tīng)器可以用來(lái)檢測(cè)網(wǎng)站的在線人數(shù),統(tǒng)計(jì)網(wǎng)站的訪問(wèn)量等等! 監(jiān)聽(tīng)器組件 監(jiān)聽(tīng)器涉及三個(gè)組件:事件...
摘要:注解在類上為類提供一個(gè)全參的構(gòu)造方法,加了這個(gè)注解后,類中不提供默認(rèn)構(gòu)造方法了。這個(gè)注解用在類上,使用類中所有帶有注解的或者帶有修飾的成員變量生成對(duì)應(yīng)的構(gòu)造方法。 轉(zhuǎn)載請(qǐng)注明原創(chuàng)地址:http://www.54tianzhisheng.cn/2018/01/07/lombok/ showImg(http://ohfk1r827.bkt.clouddn.com/blog/180107/7...
摘要:縮進(jìn)不一致,會(huì)導(dǎo)致運(yùn)行錯(cuò)誤。變量變量在使用前必須先定義即賦予變量一個(gè)值,否則會(huì)報(bào)錯(cuò)數(shù)據(jù)類型布爾只有和兩個(gè)值,表示真或假。 簡(jiǎn)介 Python 是一種高層次的結(jié)合了解釋性、編譯性、互動(dòng)性和面向?qū)ο蟮哪_本語(yǔ)言。Python 由 Guido van Rossum 于 1989 年底在荷蘭國(guó)家數(shù)學(xué)和計(jì)算機(jī)科學(xué)研究所發(fā)明,第一個(gè)公開(kāi)發(fā)行版發(fā)行于 1991 年。 特點(diǎn) 易于學(xué)習(xí):Python ...
摘要:動(dòng)態(tài)地代理,可以猜測(cè)一下它的含義,在運(yùn)行時(shí)動(dòng)態(tài)地對(duì)某些東西代理,代理它做了其他事情。所以動(dòng)態(tài)代理的內(nèi)容重點(diǎn)就是這個(gè)。所以下一篇我們來(lái)細(xì)致了解下的到底是怎么使用動(dòng)態(tài)代理的。 之前講了《零基礎(chǔ)帶你看Spring源碼——IOC控制反轉(zhuǎn)》,本來(lái)打算下一篇講講Srping的AOP的,但是其中會(huì)涉及到Java的動(dòng)態(tài)代理,所以先單獨(dú)一篇來(lái)了解下Java的動(dòng)態(tài)代理到底是什么,Java是怎么實(shí)現(xiàn)它的。 ...
閱讀 2091·2023-04-26 02:41
閱讀 2151·2021-09-24 09:47
閱讀 1551·2019-08-30 15:53
閱讀 1209·2019-08-30 13:01
閱讀 1891·2019-08-29 11:27
閱讀 2865·2019-08-28 17:55
閱讀 1753·2019-08-26 14:00
閱讀 3388·2019-08-26 10:18