编程语言
首页 > 编程语言> > JavaScript中 ES6-ES9中新增的特性

JavaScript中 ES6-ES9中新增的特性

作者:互联网

ES6

let : 声明变量、不能重复声明、 具有块级作用域 、不存在变量提升

const :定义常量、定义时要赋值、具有块级作用域、值不能修改、如果定义的是数组或对象则可以修改

解构赋值:

//解构
const obj = {
    name: 'a'
    age: '18'
}
let { name, age } = obj

//赋值
let arr=[13,18,12,'aaa',true,'哈哈哈'];
let [a,b,c,d,e,f]=arr;
console.info(a,b,c,d,e,f)

模板字符串: `  `    支持换行、里面通过  `${ 变量名 }哈哈`      直接拼接  

对象简化写法

let arr = [0, 1, 2, 3]
const obj = {
    arr
}

箭头函数

let fn = (a, b) => {
    return a + b
}
//this  始终指向声明时所在的作用域下的  this

//调用
const result = fn(1, 2)

扩展运算符:   合并、克隆、 可以将伪数组转化为数组

//数组
let arr1 = [1, 2, 3]
let arr2 = [a, b, c]
let arr = [...arr1, ...arr2]
console.log(arr) // [1 ,2, 3, a, b, c]

Promise:主要解决异步编程 回调地狱

set:可以对数组进行去重

let arr1 = [1, 2, 1, 3, 4, 3, 5]
const arr = [...new Set(arr1)]
console.log(arr) // [1, 2, 3, 4, 5]

 模块化:指将一个大的程序文件拆分成多个小的文件,然后将小的文件组合起来 

 好处:防止命名冲突、提高代码复用性、高维护性

 

ES7

Arrey.prototype.includes

includes:用于检测数组中是否包含某个元素,返回布尔值类型

const arr = [1, 2, 3, 4, 5]
console.log(arr.includes('2'))    // true

 

指数操作符:[ ** ] 用来实现幂运算,功能与Math.pow结果相同console.lo

console.log(2 ** 10)  // 计算2的十次方
console.log(Math.pow(2, 10)) 

 

ES8

async  await  :可以让异步代码像同步代码一样

 

ES9

 新增了对于对象的扩展运算

//对象  
let obj1 = {
    name: 'aa'
}
let obj2 = {
    age: '12'
}
let obj = {...obj1, ...obj2}

 

标签:ES6,arr,console,log,...,JavaScript,ES9,let,const
来源: https://blog.csdn.net/weixin_45818024/article/details/114935831