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

相关推荐
Irene19911 小时前
ElementPlus 与成熟后台框架对比:vue-element-plus-admin、vue-pure-admin等
前端·ui·框架·vue3
尘中客5 小时前
放弃 Echarts?前端直接渲染后端高精度 SVG 矢量图流的踩坑记录
前端·javascript·echarts·前端开发·svg矢量图·echarts避坑
FreeBuf_6 小时前
Chrome 0Day漏洞遭野外利用
前端·chrome
小彭努力中6 小时前
199.Vue3 + OpenLayers 实现:点击 / 拖动地图播放音频
前端·vue.js·音视频·openlayers·animate
2501_916007476 小时前
网站爬虫原理,基于浏览器点击行为还原可接口请求
前端·javascript·爬虫·ios·小程序·uni-app·iphone
前端大波6 小时前
Sentry 每日错误巡检自动化:设计思路与上手实战
前端·自动化·sentry
cch89186 小时前
汇编与Java:底层与高层的编程对决
java·开发语言·汇编
荒川之神7 小时前
拉链表概念与基本设计
java·开发语言·数据库
Highcharts.js7 小时前
适合报表系统的可视化图表|Highcharts支持直接导出PNG和PDF
javascript·数据库·react.js·pdf
chushiyunen7 小时前
python中的@Property和@Setter
java·开发语言·python