天天看點

2018-07-05 ES6學習

一、環境配置

全局安裝:babel-cli

本地安裝:babel-cli、babel-preset-es2015

建立.babelrc

{

“presets”: ["es2015"],

"plugins": []

}

二、聲明變量

var全局變量

let局部變量

const聲明後就不能修改

三、解構指派

賦的值>預設值

null是一種值,undefined什麼都不是

解構之前定義了的變量,用圓括号解決報錯

四、擴充運算符和rest運算符(...)

擴充運算符用處:當arr2 = arr1時,arr2值改變,arr1也改變;改成arr2=[...arr1]可解決

rest運算符:function(first,..arg) ...arg表示出了第一個剩下的

五、字元串模闆

拼接:

let a = xxx;

let b = `yyyy${a}zzzzz`;

查找是否存在:

b.includes(a)、b.startsWith(a)(開頭是否存在)、b.endsWith(a)(結尾是否存在)

複制字元串:

xxx.repeat(x)

六、數字操作

1、Number.isFinite()判斷是否是數字

2、Number.isNaN()判斷是否是NaN

3、Nunber.isInteger()判斷是否是整數

4、Number.parseInt()将數字轉化成Int整數

5、Number.parseFloat()将數字轉化成Float浮點數

6、Number.isSafeInteger()判斷數字是否在安全範圍内

安全範圍:-~

七、數組操作

1、Array.from() 轉化json為數組

2、Array.of() 轉化數字、字元串為數組

3、arr.find(function(value, index, arr) { return ..... })

value:表示目前查找值

index:資料索引

arr:目前數組

一找到符合條件的就傳回,不繼續查找

4、arr.fill(填充變量,填充初始索引值,填充結束索引值如果不填預設到結尾)

5、for..of

for(let i of arr){}、for(let index of arr.keys())

6、arr.entries()

entries()執行個體方式生成的是Iterator形式的數組,那這種形式的好處就是可以讓我們在需要時用next()手動跳轉到下一個值。

let arr = ['aaa', 'bbb', 'ccc'];

let list = arr.entries();

console.log(list.next().value);

console.log(list.next().value);

console.log(list.next().value);

console.log(list.next().value);//undefined

for,foreach,iterator的用法和差別

https://www.jianshu.com/p/bbb220824c9a

7、forEach、filter、some、map、join()、toString()

八、函數

1、可以有預設值(b=1)

function add(a,b=1){

return a+b;

}

2、主動抛出錯誤throw new Error('xxx')

3、箭頭函數

var add = (a,b=1) => {a+b, ...}

4、函數解構

1)對象

let json = {

a: 'yyf',

b: 'wxy'

}

function fun({a,b='wxy'}) {console.log(a,b)}

fun(json); //yyf wxy

2)數組

let arr = ['aaa','bbb','ccc'];

function fun(a,b,c) {console.log(a,b,c)}

fun(...arr);

5、in判斷存在 1)對象 2)資料

九、