undefined和Infinity在Set集合里面只会存在一个 基本Set 的使用本文就不介绍了,可以参阅mozilla网站。 什么时候使用Set 当需要对特定列表执行比较和判断是否相等时,可以使用Set,下面大家描述一下适用的场合,主要就是数据里的集合操作: 获取两个集合的并集union 获取两个集合的差集difference 获取两个集合的交集intersection...
// 首先构造Object constidSet=list1.reduce((acc,v)=>{ acc[v.id]=true; returnacc; }, {}); console.log('构造Object', idSet) // 遍历list2,去掉在idSet中存在的id constresult=list2.filter(v=>!idSet[v.id]); constrepeat=list2.filter(v=>idSet[v.id]); console.log('去重后的resul...
1、回调函数 2、事件监听,任务的执行不取决于代码的顺序,而取决于某个事件是否发生 3、发布订阅模式,也叫观察者模式 4、Promises对象 最基础的异步是setTimeout和setInterval函数,很常见,但是很少人有人知道其实这就是异步,因为它们可以控制js的执行顺序。
setTimeout与setTimeInterval均为window的函数,使用中顶层window一般都会省去,这两个函数经常稍不留神就使用错了。...setTimeout内的函数先不执行,隔一段时间后再执行,函数后面的数字是隔的时间,单位是毫秒(千分之一秒) 比如: setTimeout(‘alert(“hello world!”)’..., 400); setInterval() 方法可按照指...
简单看两个例子: 复制 // 前置递增操作符: let num1 = 1, num2 = 2; console.log(++num1 + num2) // 4 // 后置递增操作符: let num1 = 1, num2 = 2; console.log(num1++ + num2) // 3 1. 2. 3. 4. 5. 6. 7. 可以看到,两种类型的结果是不一样的,原因就在于后置递增递减操作...
最简单的操作符,用来操作一个表达式; 具有高优先级和右结合性; 在必要时将操作数自动转化为数值。 1. 递增和递减操作符(++ --) 递增操作符顾名思义就是递增其操作数,递减操作符就是递减其操作数。它们都有两个版本: 前缀版(++i):操作符位于变量的前面,表示先递增(递减),后执行语句; ...
分割符可以是一个字符、多个字符或一个正则表达式。此外,分割符不作为返回的数组元素的一部分。 split( )方法有两个参数:第1个参数表示分割符,第2个参数表示获取“分割之后的前n个元素”。 split(“ ")两个引号之间有空格,表示用空格作为分割符来分割。split(“"),两个引号之间没有空格,可以用来分割字符串...
check阶段: 执行setImmediate()设定的callbacks; close callbacks阶段: 执行socket.on('close', ...)这些callback process.nextTick()不属于上面的任何一个phase,它在每个phase结束的时候都会运行。也可以认为,nextTick在下一个异步方法的事件回调函数调用前执行。
setTimeout(clearMission, 9000) showMsg() DOM操作 DOM树 1. DOM是一套对文档的内容进行抽象和概念化的方法 2. 当页面被加载时,浏览器会创建页面的文档对象模型 3. HTML DOM模型被构造为对象的树 DOM标准规定HTML文档中的每个成分都是一个节点(node): ...
客户端 和 服务端 有一个会话 这个会话会 交流并保存 一些状态 (变量),如 登陆状态、参数变量 ... 等 直接来看个直观的 Response Headers Connection: keep-alive Content-Length: 7 Content-Type: text/plain; charset=utf-8 Date: Thu, 02 Jan 2020 08:07:42 GMT Set-Cookie: koa:sess=eyJ2aWV3cy...