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 构造函数可以直接使用,实例对象不能使用

相关推荐
小飞侠在吗2 小时前
vue props
前端·javascript·vue.js
NiNi_suanfa3 小时前
【Qt】Qt 批量修改同类对象
开发语言·c++·qt
小糖学代码3 小时前
LLM系列:1.python入门:3.布尔型对象
linux·开发语言·python
DsirNg3 小时前
页面栈溢出问题修复总结
前端·微信小程序
小徐_23333 小时前
uni-app 也能远程调试?使用 PageSpy 打开调试的新大门!
前端·微信小程序·uni-app
Data_agent3 小时前
1688获得1688店铺详情API,python请求示例
开发语言·爬虫·python
大怪v3 小时前
【Virtual World 03】上帝之手
前端·javascript
妖灵翎幺3 小时前
C++ 中的 :: 操作符详解(一切情况)
开发语言·c++·ide
Halo_tjn4 小时前
虚拟机相关实验概述
java·开发语言·windows·计算机
star _chen4 小时前
C++实现完美洗牌算法
开发语言·c++·算法