2018-07-05 ES6学习

2019-08-15 18:51:03 浏览数 (1)

一、环境配置

全局安装: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)数据

九、

0 人点赞