微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

es6

ES6简介

- ECMAScript是javascript标准

- ES6就是ECMAScript的第6个版本

- ECMAScript 6.0(以下简称 ES6)是 JavaScript 语言的下一代标准,已经在 2015 年 6 月正式发布了。它的目标,是使得 JavaScript 语言可以用来编写复杂的大型应用程序,成为企业级开发语言。

ES6新增加功能

1.let就是限制作用域中的var{ },只能在花括号内的使用

 

let es = function() {
    let num = 10
    //结果是10
    console.log('函数内的num', num)
}
//结果是报错,因为let声明的变量只能在{}内有效
console.log('函数外的num', num)

 

2.const 用变量来声明一个变量,这个变量只能在声明的时候被赋值,后续不可以用值对他进行覆盖

let es2 = function() {
    const value = 10
    //结果是10
    console.log(value)
    const value = 20
    //会报错,因为const只能在声明的时候赋值,不可以重新赋值
    console.log(value)
}
es2()

 

3.set在其他语言里称之为集合,是一种类似于array和object的数据类型,不同之处在于set的元素都是不重复的

//创建一个set集合
var s = new Set()
//add是添加元素
s.add(1)
s.add('gua')
//size是查看集合长度
s.size
//has是用来检查是否存在某个元素,结果是个布尔值,true或false
s.has(1)
//delete是删除一个元素
s.delete(1)

4. (...叫拓展符号),作用是吧数组1解开成单独的元素

//先新建一个数组array
let array = [1, 3, 6, 4 ,5, 9]
//...是拓展符号,把数组解开成单独的元素
let arr = {...array}

5.解包,是从python中学来的特性

//解包 //可以给多个变量赋值 var [a, b] = [1, 2] //a = 1 b = 2 console.log(a, b) //a=b b=a [a, b] = [b, a] //(2) [2, 1] // 0: 2 // 1: 1 // length: 2 // [[Prototype]]: Array(0)

 

6.函数认值

var foo = function(n, name = "gua") {
    console.log(n, name)
}
//如果传一个参数第一个n那就是参数的值,第二个直接输出
//如果传入两个参数那么就输出两个参数的值
//这就是函数认值
foo(11)

 

7.可变参数  用...语法可以实现可变长度的参数,多余的参数会被放进一个array数组,这个数组可以是任何名字

var value = function(a, ...arr) {
    //结果是1, 3
    console.log(a, arr.length)
    //输出结果是2 3 4
    console.log(arr)
}
value(1, 2, 3, 4)

 

8.箭头函数

1.箭头函数是匿名函数定义的简化版,宣称能使得代码更加简洁

2.它的this值是绑定了的

3.箭头函数每天arguments对象

4.如果要多参数必须要用...

(参数一,参数二) => {
    语句
}
//相当于 
function(参数一,参数二) {
    return 语句
}

//如果只有一个参数,圆括号可以省略

(参数一) => {语句} 等于 参数一 => {语句}

//但是如果没有参数,必须要使用圆括号

() => {
    语句
}

例子

var a2 = a1.map(function(n) {
    return n * n
})
//相当于
var a2 = a1.map(n => n*n)

n => n*n
//相当于
function (n) {
    return n*n
}

9.双重匿名函数

a => b => a + b

 

10.新增函数includes函数,可以用来查找返回值,查询一个数组是否存在要查询的元素,如果有就返回true没有就返回false

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐