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

相关推荐
fie8889几秒前
Spinal码MATLAB实现(采用One-at-a-Time哈希函数)
开发语言·matlab·哈希算法
ZHOUPUYU12 分钟前
PHP 8.6的底层革命。那些看不见的优化,才是真正的惊喜
开发语言·后端·php
白云如幻14 分钟前
【JDBC】集合、反射和泛型复习
java·开发语言
HelloReader21 分钟前
Flutter ChangeNotifier用 ViewModel 管理应用状态(九)
前端
用户40993225021222 分钟前
Vue 3 静态与动态 Props 如何传递?TypeScript 类型约束有何必要?
前端·vue.js·后端
程序员库里23 分钟前
TipTap简介
前端·javascript·面试
关中老四24 分钟前
【js/web甘特图插件MZGantt】如何使用外部弹框添加和修改任务(updRows方法使用说明)
前端·javascript·甘特图·甘特图插件
兆子龙25 分钟前
Vite 打包优化实战:从 12.17M 到 7.95M 的瘦身之旅
javascript
佩奇大王30 分钟前
P2118 排列字母
java·开发语言·算法