首页 > TAG信息列表 > javacript
解析Javacript的事件循环机制
前言 作为最受欢迎的Web编程语言,Javascript的单线程执行是其一大特点,也就是说在同一时间只能有一个任务处于执行状态,而后续的任务需要等待当前任务处理完毕后才能继续处理,而在当前编程语言普遍都支持多线程执行的情况下,Javascript依旧保持着其单线程执行的机制,并且单线程Javacript实现简单的发布订阅模式或观察者模式的进阶版
/** * 实现一个简单的观察者模式 */const shop = { apple: 5, // 苹果5元 potato: 2, // 马铃薯 2元 tomato: 3, // 西红柿 3元 orange: 7,}/** * 现在我们有一个便利店的实例对象,目标是需要增加对商品价格的监听,当商品价格发生变化时,触发对应的事件。 * 1、小明关注苹果价格javacript中的this指向问题
this提供了一种更优雅的方式来“传递一个对象的引用 1 浏览器全局环境和node全局环境中的this 浏览器中的this指向windows,window为浏览器的全局对象。 console.log(this===window);//true node环境中this指向为一个空对象。而global为node的全局对象。 console.log(th浅谈Javacript浅拷贝和深拷贝的实现
浅拷贝和深拷贝 如何区分深拷贝与浅拷贝,简单点来说,就是假设B复制了A,当修改A时,看B是否会发生变化,如果B也跟着变了,说明这是浅拷贝;如果B没变,那就是深拷贝,深拷贝与浅拷贝的概念只存在于引用数据类型。 1. 浅拷贝 var obj1 = { name: "帅哥", age: 20, speak: funct