目录
9:Promise中的then是同步的还是异步,简单描述下执行机制。
14:iterator的作用是什么,如何添加iterator接口。
16:简述下数组中find()和findindex()方法是干什么的。
1:Es6是什么,为什么要学习。?
- 全称 ECMAScript 6.0,是 JavaScript 的下一个版本标准
- ES5不能满足目前前端越来越复杂,庞大的现状,可以说已经过时了,ES6是对ES5的增强和升级。
1 .主流的浏览器都已经全面支持ES6
2.行业内较新的前端框架都已经全面使用ES6的语法
3.微信小程序,uni-app等都是基于ES6的语法
4.从就业出发,中小型公司,全栈,简历上多一个技能,试用期也能更快的上手。
2:let,var,const三者的区别。?
Let const 都是块级作用域
var是全局作用域
块机先声明后使用 不存在变量提升
Const 生命常量 必须赋值 地址不允许修改
3:如何合并两个对象。
Object.assign(obj1,obj)
{...obj,...obj1}
4:for...in 和for...of有什么区别。
For in 遍历对象 k代表属性 建
For of 使用前操作元素要含有 iterator 接口
V代表值
5:箭头函数的this和普通函数的this的区别。
箭头函数的this指代的是上下文环境 是静态的 不可变的
普通函数的this是指向调用者,谁调用指向谁
6:Es6中如何定义模板字符串,有什么好处。
使用~ ~两个反引来定义 输出用${变量}
好处:1.可以直接当引号使用
2.内容可以直接出现换行符
3.变量拼接~${变量}~
7:Array的扩展方法map和filter相同点与区别。
相同点 :都对数组进行遍历
含有三个参数
不同点 : map是对数组中每一个元素进行操作
Filter是筛选符合条件的数组中的元素
8:Set和Map是什么。
Set: 类似于数组的一种数据类型
元素的内存地址不可相同,相同则自动去除,只留一个
成员的值都是唯一的,没有重复
语法: new Set()
Map: 是一种数据结构
他的建可以用对象来命名
二维数组 以键值对形似存储数据
9:Promise中的then是同步的还是异步,简单描述下执行机制。
异步,promise会返回一个成功或者失败的状态,根据promise的值做出相应的的操作
10:Symbol是什么,有什么作用。
- 表示独一无二得值
- 类似于字符串的数据类型
- Symbol得值是唯一的,用来解决命名冲突的
11:数组中reduce方法有什么作用。
接受一个函数作为累加器,数组中的每一个值(从左到右)开始缩减,最终计算为一个值
12:class类中super,get,set有什么作用。
Super :调用父类函数
Get :获得属性
Set :设置修改属性
13:async/await优缺点。
优点:async/await 相比较promise的then方法处理返回的状态代码结构更加清晰
缺点:滥用 await 可能会导致性能问题,因为 await会阻塞代码,也许之后的异步代码并不依赖于前者,但仍然需要等待前者完成,导致代码失去了并发性
14:iterator的作用是什么,如何添加iterator接口。
为for…of…而存在,仅提供for..of…遍历
[Symbol.iterator](){
let index = 0;
return {
next:() => {
if(index < this.arr.length){
const result = {value : this.arr[index],done : false};
index++;
return result;
}else{
return {value : undefined,done : true}
}
}
}
}
15:本地存储有哪些方式,他们有什么区别。
sessionStorage :
- 生命周期为关闭浏览器窗口;
- 在同一个窗口(页面)下数据可共享
- 以键值对形式存储使用
localStorage:
- 生命周期为永久生效,除非手动删除,页面关闭也在
- 在同一个浏览器下数据可共享
- 也是以键值对形式存储使用
16:简述下数组中find()和findindex()方法是干什么的。
Find()查询第一个符合条件的元素,短路
FindIndex()查询第一个符合条件的元素的下标索引,短路
17:ES6中对象如何添加一个变量作为key值。
//声明一个变量并赋值
const keyName = 'keyname';
//创建一个对象
const obj = {};
//动态给对象添加数据 ,添加key值并赋值
obj[keyName] = '张三'
console.log(obj);
18:什么是Json数据。
- 是一种轻量级的数据交换格式。
- 它是基于JavaScript的一个子集。
- 数据格式简单, 易于读写, 占用带宽小。