ES6-14面试题

1、ES6的新特性有哪些?

类语法, 模块化,箭头函数,函数参数默认值,模板字符串,解构赋值,延展操作符,对象属性简写, Promise, Let与Const,还有其他····

2、let, const,var的区别

var 有变量提升,let,const没有的

let const不能重复定义相同的变量名,有块级作用域,不与顶级对象挂钩,不影响作用域链

let 可以定义不赋值,const定义变量必须赋值

const定义变量不可修改,对于复杂数据类型来说,不修改地址值,可以修改堆里面的值的内容

3、箭头函数与普通函数有什么区别

箭头函数有简写方式,一个参数,小括号可以省略,函数体就一句,大括号可以省略

箭头函数不可以作为构造函数,不能new

箭头函数没有arguments

箭头函数中的this 是静态的, 始终指向函数声明时所在作用域下的 this 的值,没有自己的this

4、js的数据类型

string,number,boolean,null,undefined,object,Symbol

5、请你说一说Promise

promise是一种异步编程解决方案,可以比较完美的解决回调地狱问题

promise有三种状态:等待中,成功,失败

promise有两种结果:成功,失败

promise是一个构造函数,使用时需要new,参数是一个回调函数,回调函数中两个参数

一个是成功的回调,一个是失败的回调,对于promise结果我们可以用.then,.catch,还可以结合async,await可以处理

6、怎么使用模块化

暴露 export:分别暴露,统一暴露,默认暴露

导入 import:通用导入,解构赋值的导入,简易形式导入(只针对默认暴露)

所有的模块放在一个app.js文件中,在app.js文件中进行数据处理

7、Object.getOwnPropertyDescriptors

该方法返回指定对象所有自身属性的描述对象

value: "bdqn",//设置值

writable: true,//是否可写

configurable: true,//是否可以删除

enumerable: true,//是否可以遍历

8、类的私有属性,私有方法,类的静态属性,静态方法

#name 只能在类的内部使用,外部实例对象,构造函数也好,都不能用

static name 构造函数可以直接使用,实例对象不能使用

相关推荐
Thera7773 分钟前
状态机(State Machine)详解:原理、优缺点与 C++ 实战示例
开发语言·c++
VX:Fegn089540 分钟前
计算机毕业设计|基于springboot + vue校园社团管理系统(源码+数据库+文档)
前端·数据库·vue.js·spring boot·后端·课程设计
niucloud-admin40 分钟前
java服务端——controller控制器
java·开发语言
Fortunate Chen1 小时前
类与对象(下)
java·javascript·jvm
夏幻灵1 小时前
JAVA基础:基本数据类型和引用数据类型
java·开发语言
ChangYan.1 小时前
直接下载源码但是执行npm run compile后报错
前端·npm·node.js
cike_y2 小时前
Spring-Bean的作用域&Bean的自动装配
java·开发语言·数据库·spring
skywalk81632 小时前
在 FreeBSD 上可以使用的虚拟主机(Web‑Hosting)面板
前端·主机·webmin
十八度的天空2 小时前
第01节 Python的基础语法
开发语言·python
yue0083 小时前
C# 字符串倒序
开发语言·c#