// var DEvent = (function () {
// var clientList = {},
// listen,
// trigger,
// remove;
// listen = function (key, fn) {
// if (!clientList[key]) {
// clientList[key] = [];
// }
// clientList[key].push(fn);
// };
// trigger = function () {
// var key = Array.prototype.shift.call(arguments),
// fns = clientList[key];
// if (!fns || fns.length === 0) {
// return false;
// }
// for (let index = 0; index < fns.length; index++) {
// const fn = fns[index];
// fn.apply(this, arguments);
// }
// };
// remove = function (key, fn) {
// var fns = clientList[key];
// if (!fns) {
// return false;
// }
// if (!fn) {
// fns && (fns.length = 0);
// } else {
// for (var l = fns.length - 1; l >= 0; l--) {
// var _fn = fns[l];
// if (_fn === fn) {
// console.log(1)
// fns.splice(l, 1);
// }
// }
// }
// };
// return {
// listen,
// trigger,
// remove
// };
// })();
function a(price, price2) {
console.log(`价格=${price}或${price2}`)
}
function b(price) {
console.log(`价格=${price}`)
}
function c(price) {
console.log("价格3=" + price)
}
// DEvent.listen('squareMeter38', a);
// DEvent.listen('squareMeter38', b);
// DEvent.listen('squareMeter38', c);
// // DEvent.remove("squareMeter38",b)
// DEvent.remove("squareMeter38", c)
// DEvent.trigger('squareMeter38', 20240000, 324);
let myEvent = (function () {
let listen,
trigger,
remove,
clientList = {};
listen = function (key, fn) {
if (!clientList[key]) {
clientList[key] = [];
}
clientList[key].push(fn)
};
trigger = function () {
let key = Array.prototype.shift.call(arguments);
let fns = clientList[key];
if (!fns || fns.length == 0) {
return false;
}
for (let index = 0; index < fns.length; index++) {
let fn = fns[index];
fn.apply(this, arguments);
}
};
remove = function (key, fn) {
let fns = clientList[key];
if (!fns) {
return false;
}
if (!fn) {
fns && (fns.length = 0);
} else {
for (let i = 0; i < fns.length; i++) {
let _fn = fns[i];
if (_fn === fn) {
fns.splice(i, 1)
}
}
}
}
return {
listen,
remove,
trigger,
}
})()
function a(price,price2) {
console.log(`价格0为${price}或${price2}`)
}
function b(price) {
console.log(`价格1为${price}`)
}
function c(price) {
console.log(`价格2为${price}`)
}
myEvent.listen("xxxx", a)
myEvent.listen("xxxx", b)
myEvent.listen("xxxx", c)
myEvent.remove("xxxx",a)
myEvent.trigger("xxxx", 123,1234)
myEvent.listen("xxx", a)
myEvent.trigger('xxx',12,124)
console