千家信息网

ES6核心知识点有哪些

发表于:2026-11-04 作者:千家信息网编辑
千家信息网最后更新 2026年11月04日,这篇文章主要介绍"ES6核心知识点有哪些"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"ES6核心知识点有哪些"文章能帮助大家解决问题。1. let和const
千家信息网最后更新 2026年11月04日ES6核心知识点有哪些

这篇文章主要介绍"ES6核心知识点有哪些"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"ES6核心知识点有哪些"文章能帮助大家解决问题。

1. let和const

let与const的用途与var类似,都是用来声明变量的,但在实际运用中他俩都有各自的特殊用途。

因为ES5只有全局作用域和函数作用域,没有块级作用域,所以使用过程中会带来不合理的效果,比如下代码:

var name = 'apple' while (true) { var name = 'banana' console.log(name) //banana break } console.log(name) //banana

以上代码中,两次都输出了banana,是不是内层的变量覆盖了外层的变量了?而let则实际上为JavaScript新增了块级作用域。用它所声明的变量,只在let命令所在的代码块内有效。

let name = 'apple' while (true) { let name = 'banana' console.log(name) //banana break } console.log(name) //apple

const也用来声明变量,但是声明的是常量。一旦声明,常量的值就不能改变。

const PI = Math.PI PI = 12; //这里会报错

const有一个很好的应用场景,就是当我们引用第三方库的时声明的变量,用const来声明可以避免未来不小心重命名而导致出现bug:

const monent = require('moment')

2.箭头函数

ES6中新增的箭头操作符=> 简化了函数的书写。操作符左边为输入的参数,而右边则是进行的操作以及返回的值,箭头函数是ES6 最最常用的一个新特性。

定义一个箭头函数很简单,基本语法是:

([param] [, param]) => { statements } param => expression

param 是参数,根据参数个数不同,分这几种情况:

() => { ... } // 零个参数用 () 表示;

x => { ... } // 一个参数可以省略 ();

(x, y) => { ... } // 多参数不能省略 ();

箭头函数还有个厉害的功能,解决了javascript语言中关键字this指向的头痛问题。箭头函数没有自己内部的 this 指针。在箭头函数中, this 指针是继承于其所在的作用域。也就是说箭头函数内部的this是函数外层的this。看下面的代码:

var a = 1; var test = { a: 100, c: function() { console.log(this.a); }, d: () => { console.log(this.a); } } test.c(); //100 test.d(); //1

3.模板字符串

ES6中允许使用反pie号 ` (一般在键盘tab键上方)来创建字符串,此种方法创建的字符串里面可以包含由美元符号加花括号包裹的变量${vraible}。

$("#result").append(`

欢迎 ${json.user}

您目前有积分:${json.fen}

`);

我们不需要在输出多行字符串时使用rn和+号来将字符串拼接,而ES6使用反pie号就可以让模板字符串中所有的空格、新行、缩进,都原样输出在生成的字符串中。

4.函数参数默认值

我们在调用自定义函数时,怕忘了传参数,如调用animal(),传统的做法就是加上这一句type = type || 'cat' 来指定默认值。

function animal(type){ type = type || 'cat' console.log(type) } animal()

而使用ES6可以这么写:

function animal(type = 'cat'){ console.log(type) } animal()

到这里是不是有种写php的感觉了。

5.Class类

ES6引入了Class类的概念,这样写的javascript代码更像面向对象编程的语法,如果你会PHP或Java,那下面的代码你一看就明白了:

class Human { constructor(name) { this.name = name; } sleep() { console.log(this.name + " is sleeping"); } } let man = new Human("Davis"); man.sleep(); //Davis is sleeping class Boy extends Human { constructor(name, age) { super() this.name = name; this.age = age; } info() { console.log(this.name + 'is ' + this.age + 'years old'); } } let son = new Boy('Faker','8'); son.sleep(); // Faker is sleeping son.info(); // Faker is 8 years old

上面代码首先用class定义了一个"类",可以看到里面有一个constructor方法,这就是构造方法,而this关键字则代表实例对象。简单地说,constructor内定义的方法和属性是实例对象自己的,而constructor外定义的方法和属性则是所有实例对象可以共享的。

Class之间可以通过extends关键字实现继承,这比ES5的通过修改原型链实现继承,要清晰和方便很多。上面定义了一个Boy类,该类通过extends关键字,继承了Human类的所有属性和方法。

值得一提的是,ES6的继承机制,实质是先创造父类的实例对象this(所以必须先调用super方法),然后再用子类的构造函数修改this。子类必须在constructor方法中调用super方法,否则新建实例时会报错。这是因为子类没有自己的this对象,而是继承父类的this对象,然后对其进行加工。如果不调用super方法,子类就得不到this对象。

6.解构赋值

ES6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring)。

let cat = 'ken' let dog = 'lili' let zoo = {cat: cat, dog: dog} console.log(zoo) //Object {cat: "ken", dog: "lili"}

上面的代码用ES6可以这么写:

let cat = 'ken' let dog = 'lili' let zoo = {cat, dog} console.log(zoo) //Object {cat: "ken", dog: "lili"}

反过来可以这么写:

let dog = {type: 'animal', many: 2} let { type, many} = dog console.log(type, many) //animal 2

关于"ES6核心知识点有哪些"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注行业资讯频道,小编每天都会为大家更新不同的知识点。

函数 方法 对象 代码 参数 变量 箭头 字符 字符串 知识 作用 实例 知识点 关键 关键字 子类 核心 实际 就是 属性 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 上海挚品互联网科技有限公司 百单网互联网科技有限公司 哈尔滨大商圈互联网科技有限公司 智能科技公司是互联网公司吗 广州互联网科技公司 北京互联网科技公司 润盈互联网科技 互联网科技生活的内容 开启互联网科技时代小说 青岛中康互联网医疗科技有限公司 承德科技产业互联网发展 武汉健翔互联网络科技有限公司 洛阳昕诺飞互联网科技有限公司 长沙茂晟互联网科技有限公司 互联网金融科技名词解释 烟台灵鸽互联网科技有限公司 国大互联网教育科技有限公司薪资 元气玛特互联网科技公司是外包吗 山东星卡互联网科技有限公司官网 厦门江牛科技互联网 互联网与科技 互联网科技园 科技互联网政务服务 智慧科技互联网 苏州大垚互联网科技 浙江互联网科技研学营 黑科技闪耀互联网之光 工业互联网等科技实现智能化赋能 昆明中奇联合互联网科技 互联网科技的前景
0