1. es6中generator
generator是es6的异步编程解决方案
简单应用如下:
function* helloWorldGenerator() {
yield 'hello';
yield 'world';
return 'ending';
}
let hw = helloWorldGenerator();
console.log(hw.next());
console.log(hw.next());
console.log(hw.next());
console.log(hw.next());
用处用一下几点:
- 异步操作的同步化表达
- 控制流管理
- 部署 Iterator 接口
- 作为数据结构
2. options预请求是什么
(1). get和post皆存在预请求
(2). 什么是预请求
预先询问服务器支持的请求方法,确定请求是否被允许
3. https加密流程
https = http + SSL;
https相对于http更加安全主要是SSL;
以前http直接进行数据传入,数据相当于在裸奔
https就是在数据传入前使用SSL非对称加密(RSA),当加密完成后,即可使用对称加密(AES)进行数据传输,加密过程如下:
4. call,apply传入null,里面的this会是什么?
function test () {
console.log(this);
}
test.apply(window); // Window
test.apply(null); // Window
test.apply(undefined); // Window
test.apply(); // Window
test.call(window); // Window
test.call(null); // Window
test.call(undefined); // Window
test.call(); // Window
5. vue的hot-module是怎么实现的?
6. for...in, for, for...of区别?
(1). 在形式上: forin中key是属性名, forof是值
(2). forinhi遍历对象的属性,包含原型上的属性; 但是forof不会遍历原型上的属性,也不能循环普通的对象
(3). forin不能遍历map和set,forof是可以的