前端ES6相关的面试题
创始人
2024-01-13 02:22:23

前端ES6相关的面试题

文章目录

  • 前端ES6相关的面试题
    • 一. var let const
      • var
      • let
      • const
    • 二 . 函数的扩展
      • reset参数
      • 箭头函数
    • 三 . 数组的扩展
    • 四.Set和map数据结构
      • Set
      • map
    • 五. Promise
    • 六. 模块化


一. var let const

var

var存在声明提升 ==>先上车,后买票
var声明的变量会挂载到window下面

console.log(num)//undefined
var num=10

let

  • let是ES6新增声明变量,具有块级作用域
  • let不存在变量提升,必须先声明,后使用
  • let存在展示性死区,比如先试用后声明
  • let在相同作用域下,不能声明相同的变量
	console.log(num)let num = 1

在这里插入图片描述

const

  • const是ES6新增声明变量,具有块级作用域
  • const声明的变量必须初始化(必须赋值)
  • const声明的常量不可以修改,这里说的是变量指向的内存地址所保存的数据不可以改变

二 . 函数的扩展

reset参数

ES6引入了reset参数取代arguments对象,reset接受的是一个数组
直接在函数的形参写(…values)

箭头函数

ES6 允许使用“箭头”(=>)定义函数。

箭头函数和function函数的区别 :

  • 箭头函数的this指向不同:
    • 箭头函数的this指向它的父级
    • 在普通函数中 : this指向调用它的对象,
    • 如果是构造函数 : this指向对象的实例
  • 箭头函数都是匿名函数,而普通函数可以是具名也可以是匿名
  • 箭头函数不能用做构造函数实例化对象,而普通函数可以
  • 箭头函数没有arguments

三 . 数组的扩展

  • forEach : 单纯的对数组进行遍历
  • map : 通过映射关系返回一个新的数组
  • filter : 根据条件过滤出对应的数组
  • find : 返回数组中满足提供的测试函数的第一个元素的值。否则返回 undefined
  • every : 只有数组中所有都满足条件才会返回true,否则返回false
  • some : 只要数组中`有一项满足条件就返回true,相反则返回false
  • reduce : 累计器 对数组每个元素执行一次回调函数,每一次运行回调函数之前计算的结果作为参数传入,最终将其返回

四.Set和map数据结构

Set

Set类似于数组,但是成员的值都是唯一的,没有重复的值
Set本身是一个构造函数

  • size :获取Set实例的元素个数
  • add : 添加元素
  • has : 查询Set实例是否存在某个元素(返回布尔值)
  • delete : 删除Set实例中某个元素
  • clear : 清空Set实例

Set主要的应用场景是对数组进行去重

map

map本质上是键值对的集合,它的键不限于字符串,

  • Map 保存键值对,并且能够记住键的原始插入顺序
  • Map 对键名是否相同的判断基本遵循严格相等===的判断
  • Map适用于即 key => value 的结构,需要字符串以外的键或者值

五. Promise

Promise是ES6新增的构造函数,比传统的解决方案更合理和强大

Promise简单来说就是一个容器,里面保存这未来才会结束的事件(通常是一个异步操作)

  • Promise有三种状态 : pending(进行中),fulfilled(已成功),rejected(已失败)
  • Promise对象的状态改变只有两种情况: 进行中变失败,进行中变成功,只要这两种情况发生,状态就不会改变了,这是称为resolved(已定型)

Promise.prototype上的方法:

  • then() : 实例状态改变的回调函数,有两个参数:第一个是成功回调函数,第二个是失败回调函数。他会返回一个全新的promise,因此可以继续then链式调用
  • catch() : 失败回调函数,状态变为rejected执行。相当于promise. prototytype.then(null/undifined,rejection),如果promise内发生了错误,但却没有定义catch(),这时运行到这一行代码会报错,但是不会影响到promise后面代码的执行
  • finally() : Promise实例无论什么状态都会执行的函数
  • all():将多个promise实例包装成一个新的promise实例

六. 模块化

ES6支持模块化的导入和导出

  • 按需导入 : import {} from “”
  • 按需导出 : export 导出的内容
  • 默认导入 : import 名字 from “”
  • 默认导出 : export default 导出的内容

相关内容

热门资讯

demo什么意思 demo版本... 618快到了,各位的小金库大概也在准备开闸放水了吧。没有小金库的,也该向老婆撒娇卖萌服个软了,一切只...
猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...
脚上的穴位图 脚面经络图对应的... 人体穴位作用图解大全更清晰直观的标注了各个人体穴位的作用,包括头部穴位图、胸部穴位图、背部穴位图、胳...
阿西吧是什么意思 阿西吧相当于... 即使你没有受到过任何外语培训,你也懂四国语言。汉语:你好英语:Shit韩语:阿西吧(아,씨발! )日...
demo什么意思 demo版本... 618快到了,各位的小金库大概也在准备开闸放水了吧。没有小金库的,也该向老婆撒娇卖萌服个软了,一切只...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...
阿西吧是什么意思 阿西吧相当于... 即使你没有受到过任何外语培训,你也懂四国语言。汉语:你好英语:Shit韩语:阿西吧(아,씨발! )日...
脚上的穴位图 脚面经络图对应的... 人体穴位作用图解大全更清晰直观的标注了各个人体穴位的作用,包括头部穴位图、胸部穴位图、背部穴位图、胳...
demo什么意思 demo版本... 618快到了,各位的小金库大概也在准备开闸放水了吧。没有小金库的,也该向老婆撒娇卖萌服个软了,一切只...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...