node使用3

定时器

setTimeout:

1 例:
2  setTimeout(()=>{},2000)//延迟2s执行
3 setTimeout(()=>{},0)//立即执行
4 const id=setTImeout(()=>{},5000)//setTImeout会返回一个id
5 clearTimeout(id);//清空计时器

setInterval:

与setTimeout的区别是setTImeout只执行一次而setInterval是间隔指定时间一直执行,除非使用clearInterval()让它停止,代码形式基本与setTimeout一样


Promise

定义:最终可变值的代理

学习文档:http://nodejs.cn/learn/understanding-javascript-promises

async和await

目的:它们减少了 promises 的样板,且减少了 promise 链的“不破坏链条”的限制。

使用例子:

 1 const doSomeThingAsync=()=>{
 2     return new Promise(resolve => {
 3         setTimeout(()=>resolve('做些事情'),3000)
 4 
 5     })
 6 }
 7 const doSomeThing= async ()=>{
 8     console.log(await doSomeThingAsync())
 9 }
10 console.log('之前')
11 doSomeThing();
12 console.log('之后')

事件:

on emit

on用于添加回调函数

emit用于触发事件

使用以下代码进行初始化:

 1 //初始化事件
 2 const EventEmitter = require('events')
 3 const eventEmitter = new EventEmitter()
 4 //不带参数的事件
 5 eventEmitter.on('start',()=>{
 6     console.log('开始')
 7 })
 8 eventEmitter.emit('start')
 9 //带参数的事件
10 eventEmitter.on('gogogo',text=>{
11     console.log(`开始 ${text}`)
12 })
13 eventEmitter.emit('gogogo',666)
原文地址:https://www.cnblogs.com/tilyougogannbare666/p/15222975.html