ES6面试题:(第一天)

目录

1.var,let,const的区别

2.说说你对数组的解构和对象的解构的理解?

3.ES6的新语法

4.Map对象和Set对象的区别

5.Set实现数组去重


1.var,let,const的区别

  • 使用 var 声明的变量,其作用域为全局作用域或者为所在的函数内局部作用域,且存在变量提升现象
  • 使用 let 声明的变量,其作用域为该语句所在的代码块内{},不存在变量提升
  • 使用 const 声明的是常量,在后面出现的代码中不能再修改该常量的值

2.说说你对数组的解构和对象的解构的理解?

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

具体自己举例说明

3.ES6的新语法

  1. let和const

2.解构赋值,数组和对象的解构

3.剩余及扩展运算符...

4.Symbol基本数据类型

5.Map和Set对象

6.proxy代理和reflect映射

  1. 模板字符串

  2. 箭头函数

9.迭代器iterator

10.Promise async await

11.ES6模块化-export-import

4.Map对象和Set对象的区别

1.Map是键值对,当然键和值可以是任何的值;Set是值的集合,

2.Map可以通过get方法获取值,而Set不能因为它只有值;

3.Map由于没有格式限制,可以做数据存储,Set的值是唯一的可以做数组去重,

5.Set实现数组去重

第一种数组去重方法(使用Array.from):

let arr = [12,43,23,43,68,12];

let item = new Set(arr);

console.log(item);//结果输出的是一个对象

//使用Array.from转成数组

let arr = [12,43,23,43,68,12];

let item = Array.from(new Set(arr));

console.log(item);// [12, 43, 23, 68]

第二种数组去重方法(使用...扩展运算符):

let arr = [12,43,23,43,68,12];

let item = [...new Set(arr)];

console.log(item);//[12, 43, 23, 68]

相关推荐
天天向上10242 分钟前
vue 大屏适配的一种实现思路
前端·javascript·vue.js
SuperEugene3 分钟前
Vue/Vite 多环境配置实战:dev、test、prod 差异区分与避坑指南|Vue 工程化篇
前端·javascript·vue.js
结网的兔子13 分钟前
前端学习笔记(实战准备篇)——用vite构建一个项目【吐血整理】
前端·学习·elementui·npm·node.js·vue
kyriewen14 分钟前
盒模型:CSS 世界的物理法则,margin 塌陷与 padding 的恩怨情仇
前端·css·html
lichenyang45314 分钟前
React 性能优化组件设计模式与通信
前端·javascript·设计模式
小成C15 分钟前
别再把 Claude Code 用乱了:CLAUDE.md、Rules、Skills、Hooks 到底怎么分工?
前端·人工智能·面试
巫山老妖20 分钟前
OpenClaw 技术教程大全:从安装到多 Agent 协作,全在这里
java·前端
weixin_4462608520 分钟前
提升开发效率的神器!快速选择编码上下文 — React Grab
前端·react.js·前端框架
前端付豪24 分钟前
自动学习建议解决薄弱知识点
前端·python·openai
SuperEugene26 分钟前
Vite 实战教程:alias/env/proxy 配置 + 打包优化避坑|Vue 工程化篇
前端·javascript·vue.js·状态模式·vite