前端面试系列一:JavaScript / ES6

快来加入我们吧!

"小和山的菜鸟们",为前端开发者提供技术相关资讯以及系列基础文章。为更好的用户体验,请您移至我们官网小和山的菜鸟们 ( https://xhs-rookies.com/ ) 进行学习,及时获取最新文章。

"Code tailor" ,如果您对我们文章感兴趣、或是想提一些建议,微信关注 “小和山的菜鸟们” 公众号,与我们取的联系,您也可以在微信上观看我们的文章。每一个建议或是赞同都是对我们极大的鼓励!

面试系列不定期更新,请随时关注

前言

本篇专栏重点在于讲解面试中 JavaScript/ES6 的面试题内容。

注意: 本篇专栏至只会涉及到重点内容,并不会进行拓展。某些题目需要拓展知识点的,我们会将拓展内容、整体详细信息放置于每个题目的后面,可以自行查看。

JavaScript/ES6:

JavaScript/ES6
const 和 let 的区别
基本数据类型有哪几种
基本数据类型怎么判断
typeof null 返回的是什么,为什么
闭包以及闭包的用法
遍历的方法有哪些
for…in for…of 两者区别
ES6 有哪些新特性
箭头函数和普通函数的区别。
什么是原型链
如何使用 Promise
Promise 原理是什么

题目解析

一、const 和 let 的区别

  • const 修饰基本类型时不可更改,修饰引用类型(对象,数组)时,其指针所指向的地址不能更改,内部数据可更改。let 修饰任何类型均可修改

  • const 声明后必须初始化,而 let 不需要

更多详情请见:JavaScript 中的 Var,Let 和 Const 有什么区别

二、基本数据类型有哪几种

七大基本数据类型:undefinednullbooleanNumberStringBigIntSymbol

引用数据类型:Object

三、基本数据类型判断

  • typeof
  • instanceof
  • Object.prototype.toString()

四、typeof null 返回的是什么,为什么

typeof null 返回的是 Object,这是因为 Object 在底层存储的低三位机器码为 000,而 null 的存储机器码为全 0,所以用 typeof 判断时会直接判断为 Object

注意:问题二、三、四是连续的

更多详情请见:浅谈 typeof 和 instanceof 的原理

五、闭包以及闭包的用法

闭包:能够访问自由变量的函数(自由变量既不是函数参数,也不在函数内部的变量)

应用场景:

  • 立即执行函数

优点:

  • 可以长期存储变量

缺点:

  • 过多影响内存

更多详情请见:闭包

六、遍历的方法有哪些

常用的遍历方法:mapforEachfilterfor...infor...of

七、for…in 和 for…of 的区别

for...in 用来遍历对象的 key 值和原型链上的值

for...of 用来遍历对象的 value

八、ES6 有哪些新特性

  • letconst

  • 箭头函数

  • promise

  • asyncawait

  • setmap

  • class

  • Symbol

九、箭头函数和普通函数的区别

主要区别在于箭头函数没有 thisargument

没有 this 的话

  • 不能作为构造函数

  • 没有原型

  • 无法通过 callbindapply 改变 this 指向

  • 它的 this 永远指向 它定义时所处的全局执行环境

十、什么是原型链

原型链就是由原型通过 proto 连接起来组成的链状结构

更多详情:原型链

十一、Promise

务必掌握 Promise 常用方法,如 thenallraceresolvereject

Promise 的关键点在于

  • 三个状态
  • 链式调用

更多详情:图解 Promise

下节预告

下节我们将为大家带来 HTML/CSS 的面试题解,敬请期待!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值