摘要:從入門到放棄是什么,黑歷史,不講,自己百度去。類你沒有看錯(cuò),這里面的就沒有問題的。之前我們用過,和有了,再也不用這兩個(gè)貨了。一個(gè)函數(shù),可以遍歷狀態(tài)感覺就是狀態(tài)機(jī),好吧不說了再說就懵逼了。
ES6從入門到放棄 1.ES6是什么,黑歷史,不講,自己百度去。 2.在瀏覽器中如何使用? 1.babel babeljs.io在線編譯 2.traceur-----Google出的編譯器,把ES6編譯成ES5
bootsrap 引導(dǎo)程序,和我們理解的bootstrap css那個(gè)框架沒有半毛錢關(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 是不是很簡潔?5.ES6新技巧 a)復(fù)制數(shù)組
arr2.from(arr)//再也不用用循環(huán)了,吼吼,還可不可以更性感一點(diǎn) arr2 = [...arr]//簡直是bug級(jí)別的用法,不過真心簡單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)簡單。
([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());
你沒有看錯(cuò),bug一樣的語法。
8.重中之重,不懂這個(gè)你徹底懵逼,完全看不懂a(chǎn)ngular2.x在干啥。類。類,真特么累,一個(gè)語法糖,廢柴,然而你還得懂。
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());
你沒有看錯(cuò),這里面的this就沒有問題的。玩類,不得不說的一個(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)該這么玩,話說吐槽一下,敢不敢把construtor這么丑逼的東西給我換成真正的構(gòu)造函數(shù)?
再說一個(gè)模塊化,前方高能,必須必須必須會(huì)!!否則你載angular2.x中連代碼你都組織不起來,不知道你往哪里寫。
之前我們用過seajs,和require,有了ES6,再也不用這兩個(gè)貨了。
定義模塊
const a = 12; export a;
再來一個(gè)angular2.x中的例子
class hero{ //屬性 xxxx //方法 } exports hero;
怎么使用?
import modA from "./a.js"; import modB from "./b.js"; console.log(modA+modB);9.promise
如果你想玩一些新的庫,肯定離不開數(shù)據(jù)交互,外面炒的很火。
就是一個(gè)對(duì)象,用來傳遞異步操作的數(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——用來捕獲錯(cuò)誤10.生成器Gennerator.
看起來挺懸,其實(shí)就是那么回事兒,我們看看是什么鬼。
一個(gè)函數(shù),可以遍歷狀態(tài),感覺就是狀態(tài)機(jī),好吧不說了再說就懵逼了。
語法:
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://systransis.cn/yun/82501.html
摘要:如果遇到非常的復(fù)雜的匹配,正則表達(dá)式的優(yōu)勢就更加明顯了。關(guān)于正則表達(dá)式書寫規(guī)則,可查看,上面說的很清楚了,我就不貼出來了。替換與正則表達(dá)式匹配的子串,并返回替換后的字符串。結(jié)語正則表達(dá)式并不難,懂了其中的套路之后,一切都變得簡單了。 前言 在正文開始前,先說說正則表達(dá)式是什么,為什么要用正則表達(dá)式?正則表達(dá)式在我個(gè)人看來就是一個(gè)瀏覽器可以識(shí)別的規(guī)則,有了這個(gè)規(guī)則,瀏覽器就可以幫我們判斷...
摘要:但監(jiān)聽器要在事件源上實(shí)現(xiàn)接口也就是說,直接用一個(gè)類實(shí)現(xiàn)和接口是監(jiān)聽不到內(nèi)對(duì)象的變化的。 什么是監(jiān)聽器 監(jiān)聽器就是一個(gè)實(shí)現(xiàn)特定接口的普通java程序,這個(gè)程序?qū)iT用于監(jiān)聽另一個(gè)java對(duì)象的方法調(diào)用或?qū)傩愿淖儯?dāng)被監(jiān)聽對(duì)象發(fā)生上述事件后,監(jiān)聽器某個(gè)方法將立即被執(zhí)行。。 為什么我們要使用監(jiān)聽器? 監(jiān)聽器可以用來檢測網(wǎng)站的在線人數(shù),統(tǒng)計(jì)網(wǎng)站的訪問量等等! 監(jiān)聽器組件 監(jiān)聽器涉及三個(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è)值,表示真或假。 簡介 Python 是一種高層次的結(jié)合了解釋性、編譯性、互動(dòng)性和面向?qū)ο蟮哪_本語言。Python 由 Guido van Rossum 于 1989 年底在荷蘭國家數(shù)學(xué)和計(jì)算機(jī)科學(xué)研究所發(fā)明,第一個(gè)公開發(fā)行版發(fā)行于 1991 年。 特點(diǎn) 易于學(xué)習(xí):Python ...
摘要:動(dòng)態(tài)地代理,可以猜測一下它的含義,在運(yùn)行時(shí)動(dòng)態(tài)地對(duì)某些東西代理,代理它做了其他事情。所以動(dòng)態(tài)代理的內(nèi)容重點(diǎn)就是這個(gè)。所以下一篇我們來細(xì)致了解下的到底是怎么使用動(dòng)態(tài)代理的。 之前講了《零基礎(chǔ)帶你看Spring源碼——IOC控制反轉(zhuǎn)》,本來打算下一篇講講Srping的AOP的,但是其中會(huì)涉及到Java的動(dòng)態(tài)代理,所以先單獨(dú)一篇來了解下Java的動(dòng)態(tài)代理到底是什么,Java是怎么實(shí)現(xiàn)它的。 ...
閱讀 2139·2023-04-26 02:41
閱讀 2171·2021-09-24 09:47
閱讀 1577·2019-08-30 15:53
閱讀 1232·2019-08-30 13:01
閱讀 1910·2019-08-29 11:27
閱讀 2885·2019-08-28 17:55
閱讀 1805·2019-08-26 14:00
閱讀 3455·2019-08-26 10:18