对象
_处女座程序员的日常
做正确的事,然后把事情做正确。理性对待一切!
展开
-
js实现发布订阅模式
发布订阅模式: 他俩之间需要中介来实现,发布者和订阅者是平级关系。他们之前的联系是通过中介来实现。 而观察者模式中观察者是需要保存在被观察中的。 let fs = require('fs'); let event ={ subArr:[],//中介(既不属于on也不属于emit) on(fn){//订阅 this.subArr.push(fn); }, emit(){//发布 this.subArr.forEach(fn=>fn())原创 2021-10-06 23:04:26 · 143 阅读 · 0 评论 -
js实现观察者模式(一文看懂)
观察者模式特点:将订阅者直接存在了观察者中。 //被观察者 class Subject{ constructor(){ this.status ="想喝水"; this.subArr=[]; } // 添加观察者 add(o){ this.subArr.push(o); } // 改变状态 setStatus(status){ this.status = status; this.n原创 2021-10-06 22:09:16 · 240 阅读 · 0 评论 -
js中new的时候发生了什么(全面解释)
小红书中也写了,但大家可能看不大懂,实际上共隐式的执行了四步(有的地是三步), function Programmer(name,age){ //1.创建一个this空对象var this= {} //2.使this的原型指向构造函数的 prototype, //this:{ // __proto__:Programmer.prototype //} //3.执行构造函数中代码 this.name = name; this.age = age; // 执行之后,this对象原创 2021-08-26 22:38:32 · 319 阅读 · 0 评论