ES6

var

1.可以重復聲明

2.無法限制修改

3.沒有塊級作用域

let?不能重復聲明,變量-可以修改,塊級作用域

const?不能重復聲明,變量-不可以修改,塊級作用域

箭頭函數

function?名字(){

}

()=>{}

1.如果只有一個參數 ()可以省

2.如果只有一個return,{}可以省

let?show=a=>a*2

arr.sort((n1,n2)=>n1-n2)

函數的參數

1.參數的擴展和數組展開

(1)收集剩余的參數?

function show(a,b,...args){}

(2)數組的展開

let arr=[1,2,3];

show(...arr);

function show(a,b,c){

alert(a);alert(b);alert(c)

}

let a=[1,1,1]

let b=[2,3,4]

let c=[...a,...b]

2.默認參數

function a(b=3){}

解構賦值

1.左右兩邊結構一樣

2.右邊是個東西

3.聲明和賦值放一起寫

let [a,b,c]=[1,2,3]

let {a,c,d}={a:12,c:5,d:6}

let [{a,b},[n1,n2,n3],num,str]=[{a:12,b:5},[12,3,4],5,'ddf']

數組:

map?映射? 一個對一個

let arr=[1,2,3]

let result =arr.map(function(item){

return item*2

})

let result =arr.map(item=>item*2)

let score=[19,34,56,75,43]

let result= score.map(item =>item>=60?'及格':'不及格')

reduce?匯總? 一堆出來一個

let arr=[12,23,4,5]

let result=arr.reduce(function(tmp,item,index){

tmp 中間結果

item 第幾項的值

index 第幾項

})

求平局

let arr =[23,34,54,45]

let result=arr.reduce(function(tmp,item,index){

if(index!=arr.length-1){
? ? return tmp+item;

}else{

? ? ? return(tmp+item)/arr.length

}

})

alert(result)

filter?過濾器

let arr=[12,32,34,99,45]

let result =arr.filter(item=>item%3==0)

alert (result)

let arr=[

{title:'xie',price:74},

{title:'wazi',price:734344},

{title:'kuzi',price:724}

];

let result=arr.filter(json=>json.price>=10000);

console.log(result)

forEach?迭代

let arr=[12,3,4,5]

arr.forEach((item,index)=>{

alert(index+':'+item);

});

字符串

1.startsWith()

2.endsWith()

布爾值

3 字符串模板

let title='標題';

let content='內容';

let str=`<div>

<h1>${title}</h1>

<p>${content}</p>

</div>`;

1.可以直接把東西放在字符串里面 ${東西}

2.可以折行

面向對象

class User{

constructor(name,pass){

this.name=name;

this.pass=pass;

}

showName(){

? ?alert(this.name);

}

showPass(){

? ? alert(this.pass)

}

}

var u1=new User('dsfs','22')

u1.showName;

u2.showPass;

1.class關鍵字 構造器和類分開

2.class里面直接加方法

繼承:

class VipUser extends User{

? ? constructor(name,pass,level){

? ? super(name,pass);

? ? ?this.level=level;

}

? ? ?showLevel(){

? ? ? ? ?alert(this.level);

? ? ? }

}

var v1=new VipUser('sss','22','3')

json

1.JSON.stringify

JSON.parse

let str='{"a":12,"b":5,"c":"aaa"}';

let json=JSON.parse(str)? ?


let json={a:12,b:5};

let str='http://baidu.com/path/user?data='+encodeURIComponent(JSON.stringify(json));

2簡寫

名字和值(key和value)一樣的 留一個就行

let a=2;

let b=3;

let json={a,b,c:123}

方法: show:function(){...}

show(){...}

:和function一塊刪

promise

1.let p=new Promise(function(resolve,reject){

$.ajax({

url:'data/1.txt',

dataType:'json',

success(arr){

resolve(arr);

},

error(err){

reject(err)

}

})

})

p.then(function(arr){

alert('成功'+arr)

},function(err){

alert('失敗'+err)

});

2.function createPromise(url){

return new Promise(function(resolve,reject){

$.ajax({

url

dataType:'json',

success(arr){

resolve(arr);

},

error(err){

reject(err);

}

})

})

}

Promise.all([

createPromise('data/1.txt'),

createPromise('data/2.txt')

]).then(function(arr){

let [res1,res2]=arr;

},function(){

alert('error')

})

3.

Promise.all([

$.ajax({url:'data/1.txt',dataType:'json'}),

$.ajax({url:'data/2.txt',dataType:'json'})

]).then(function(results){

let [arr,json]=results;

},function(){

alert('error')

})

Promise.all([$.ajax(),$.ajax()]).then(results=>{ok

},error=>{error})

generator 可停函數

function *show(){

alert('a');

yield;

alert('b');

}

let genObj=show();

genObj.next();

genObj.next();

yield

1.function *show(num1,num2){

alert(`${num1},${num2}`);//99,88

alert('a');

let a=yield;

alert('b');

alert(a);// 5

}

let gen=show(99,88);

gen.next(12);//沒法給yield傳參

gen.next(5);

2.function *show(){

alert('a');

yield 12;

alert('b');

return 55;

}

len gen=show();

len res1=gen.next();

console.log(res1);//{value:12,done:false}

let res2=gen.next();

console.log(res2);//{value:55,done:false}











最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 229,460評論 6 538
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 99,067評論 3 423
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 177,467評論 0 382
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,468評論 1 316
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,184評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,582評論 1 325
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,616評論 3 444
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,794評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,343評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,096評論 3 356
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,291評論 1 371
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,863評論 5 362
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,513評論 3 348
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,941評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,190評論 1 291
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,026評論 3 396
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,253評論 2 375

推薦閱讀更多精彩內容