面试题(面试须知)

本文介绍了JavaScript中的const与let的区别,解构赋值在数组和对象中的应用,函数的this指向,箭头函数的特点,以及new函数的执行步骤。还涉及作用域链、继承方式、数组操作、对象方法、Symbol、Proxy和Promise。特别提到了async/await用于解决并发请求的处理。
摘要由CSDN通过智能技术生成

* let const 区别: 
  const 更快
  const let 暂时性死区, const let 没有变量提升

* 解构赋值
  数组 对象 怎么解构赋值
  数组: const [a, b] = [1, 2]
  对象: const { a, b: b2 } = { b: 1, a: 2 }
  我不定义第三个变量, 只定义2个变量 怎么交换这个2个变量的值
  [a, b] = [b, a]
  const { a = 1 } = { a: undeinfind }

* 函数
  函数 this定义: this代表当前正在执行的对象
  箭头函数 this: 箭头函数 没有自己的 this, 他会把上一层作用域链的this当成自己的this
  改变this指针: call apply bind (背一下 call apply)
  箭头函数和普通函数区别: 1. 箭头函数不能当类使用 2. 没有自己的this 3. arguments
  new 函数 会经过哪些步骤: 1. 创建一个空对象 2. 执行构造器 3. 给this挂在变量 4. 返回这个
  对象给定义的接收变量
  const obj = new (function fn () {})
  作用域链 背一下
  继承: 寄生组合式继承

* 数组:
  数组有哪些循环方式: filter map reduce find findIndex forEach
  数组的常用的方法 属性: 

* 对象:
  Object.keys() Object.values() Object.values()
  Object.defineProperty 用法

* Symbol
  用法: Symbol()
  作用: 创建的变量唯一值

* Proxy: 
  用法: 背一下
  Proxy defineProperty 区别: 

* Promise 必考
  有几种状态: 3中 进行中 已成功 已完成
  有哪些 属性 方法: 
  为什么会有 promise: 为了解决 ajax 回调地狱, 不完善有缺点

* async 必考
  用法: async await
  同时请求3接口 全部执行完, 拿到返回值: 
  async function () {
    const xxx = await Promise.all([ajax1, ajax2, ajax3])
  }
  async 实现原理:

* class
  用法: 
  继承: extends
  子类 super(): 子类没有自己 this
  私有变量: TS
  静态方法, 静态属性

* Module
  AMD CMD === import
  export 与 import 的复合写法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值