logo头像
Snippet 博客主题
js事件循环(Event Loop)

js事件循环(Event Loop)

微任务和宏任务皆为异步任务,它们都属于一个队列,主要区别在于他们的执行顺序,Event Loop的走向和取值。 Event Loop即事件循环,是指浏览器或Node的一种解决javaScript单线程运行时不会阻塞的一种机制,也就是我...

javascript深拷贝与浅拷贝的区别,实现深拷贝的几种方法

javascript深拷贝与浅拷贝的区别,实现深拷贝的几种方法

1、引言如何区分深拷贝与浅拷贝,简单点来说,就是假设B复制了A,当修改A时,看B是否会发生变化,如果B也跟着变了,说明这是浅拷贝,拿人手短,如果B没变,那就是深拷贝,自食其力。 此篇文章中也会简单阐述到栈堆,基本数据类型与引用数据类型...

javascript闭包

javascript闭包

1、变量的作用域变量的作用域无非就是两种:全局变量和局部变量。Javascript语言的特殊之处,就在于函数内部可以直接读取全局变量。 12345var n=999;function f1(){  alert(n);&#12...

ES6-Map和Set与iterable类型

ES6-Map和Set与iterable类型

一、Map(映射)在ES6之前,JavaScript里通常用 普通对象(Object) 来存储键值对。 这样会导致很多问题: 键只能是字符串(或Symbol),实际上Number或者其他数据类型作为键也是非常合理的; 无法保证插入顺...