JS 模仿红绿灯(控制台)
时间:2021-10-11
本文章向大家介绍JS 模仿红绿灯(控制台),主要包括JS 模仿红绿灯(控制台)使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
async/await
function createLight(type, delay) {
return new Promise((resolve, reject) => {
console.log(type);
setTimeout(() => resolve(), delay * 1000);
});
}
const lights = [
createLight.bind(null, '红灯', 4),
createLight.bind(null, '黄灯', 2),
createLight.bind(null, '绿灯', 4)
];
async function start() {
while(true) {
for (const light of lights) {
await light();
}
}
}
start();
for...await...of
function createLight(type, delay) {
return new Promise((resolve, reject) => {
console.log(type);
setTimeout(() => resolve(type), delay * 1000);
});
}
async function* lightGenerator() {
const lights = [
createLight.bind(null, '红灯', 4),
createLight.bind(null, '黄灯', 2),
createLight.bind(null, '绿灯', 4)
];
for (const light of lights) {
yield light();
}
}
async function start() {
while(true) {
for await (const type of lightGenerator()) {
// console.log(type);
}
}
}
start();
展示
原文地址:https://www.cnblogs.com/haveadate/p/15394907.html
- 左手用R右手Python系列——面向对象编程基础
- 线性同余同余方程组解法(excrt)
- #19. 计数(容斥原理)
- 左手用R右手Python系列——多进程/线程数据抓取与网页请求
- #15. 钻石
- P1328 生活大爆炸版石头剪刀布
- ASP.NET MVC 5 Authentication Breakdown
- jquery easyui datagrid mvc server端分页排序筛选的实现
- 左手用R右手Python系列——使用多进程进行任务处理
- 2017.9.17校内noip模拟赛解题报告
- MySQL基础入门——MySQL与R语言、Python交互
- BizTalk Orchestration execute Flat file disassembler ReceivePipeline
- MySQL基础入门系列之——字符与日期数据处理
- P2038 无线网络发射器选址
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法