基础:
```
<script>
function *gen(x){
console.log(x);
yield x;
yield 10 ;
}
var g = gen(1);
console.log(g.next()); //{value: 1, done: false}
/* g.next()会得到一个对象,有value,有done,value就是yield后面的内容,done表示generator函数是否执行完毕 */
console.log(g.next()); //{value: 10, done: false}
console.log(g.next()); //{value: undefined, done: true}
</script>
```
进阶版:
```
<script>
function *gen(x){
console.log(x);
var y = yield 13+x;
yield y+x;
}
var g = gen(10);
console.log(g.next()); //{value: 1, done: false}
/* g.next()会得到一个对象,有value,有done,value就是yield后面的内容,done表示generator函数是否执行完毕 */
console.log(g.next(50)); //{value: 60, done: false}
/* 这个里面的50指的是第一个传的值的返回值y */
</script>
```
*****
升级版---ajax:
```
<div id="div"></div>
<img src="" alt="">
<p id="p"></p>
<script>
var baseUrl = `http://api.douban.com/v2/movie/`;
function* getData() {
var id = yield $.ajax({
url: baseUrl + `search?q=你的名字&count=1`,
dataType: "jsonp"
})
yield $.ajax({
url: baseUrl + id,
dataType: "jsonp"
})
}
var gen = getData();
var movie = gen.next();
movie.value.then(res => {
var id = res.subjects[0].id;
var title = res.subjects[0].title;
var imgUrl = res.subjects[0].images.small;
console.log(title);
console.log(imgUrl);
$("img").attr("src", res.subjects[0].images.small);
$("#div").html(res.title)
var detail = gen.next(id)
detail.value.then(res => {
console.log(res);
var summary = res.summary;
$("p").html(summary)
})
})
</script>
```
- HTML,CSS
- 如何书写高效的css样式
- box-shadow
- 表格合并行列
- 自适应单位
- 隐藏元素
- 浏览器缓存
- 浏览器内核
- css和js的合理走位
- 2021样式问题汇总
- 模拟面试
- 移动端适配问题
- flexible(rem)
- vw+rem
- 判断一个属性是对象的私有属性
- px rpx em rem vw
- 清除浮动
- 栅格系统
- get&&post
- 雪碧图
- new操作符
- call apply bind区别
- 前端模块化
- 回调函数
- 回调地狱(封装版)
- 回调地狱(promise)
- 回调地狱(generator)
- 回调地狱(async)
- es6新特性
- let
- 箭头函数
- 展开 解构 默认赋值
- vue生命周期
- axios封装
- axios跨域拿数据
- ajax封装
- JavaScript
- 数组
- 排序
- 取偶数
- 反转排序
- 取最大值
- 数组去重
- 复杂版
- 数组的克隆(深拷贝)的方法
- 求质数
- 原型和原型链
- 创建对象
- 什么是路由
- SASS
- jQuery中的append和prepend区别?
- css动画及js动画的区别
- 隐式类型转换
- 原型
- 事件传播
- 函数
- 增加属性
- 构造函数
- 一元操作符
- 作用域
- 短语
- Vue
- - nextTick
- 自我介绍
- 哦豁(;д;)
- for in效果
- 事件
- promise特点
- 如何实现一个ajax请求
- 媒体查询
- substr和substring
- MVC、MVVM
- 面向对象
- 取数据、渲染数据
- ajax
- vue
- React
- es6-class
- 几种类型的DOM节点
- js同源策略
- 闭包
- 2021
- 数据类型
- 闭包2
- 防抖节流
- 原型与原型链
- call与apply与bind
- 深浅拷贝
- New关键字
