SOURCE

var salesOffices = {};
		salesOffices.clientList = [];
		salesOffices.listen = function(key,fn){
			if(!this.clientList[key]){
				this.clientList[key] = [];
			}
			this.clientList[key].push(fn)
		}
		salesOffices.trigger = function(){
			// console.log(arguments)
			var key = Array.prototype.shift.call(arguments),
			fns = this.clientList[key];
			// console.log(key)
			// console.warn(fns)
			if(!fns || fns.length === 0){
				return false
			}
			for(var i = 0,fn;fn = fns[i++];){
				fn.apply(this,arguments);
			}
		}
		salesOffices.listen('squareMeter88',function(price){
			console.log(price)
		})
		salesOffices.listen('squareMeter110',function(price){
			console.log(1)
			console.log(price)
		})
		salesOffices.listen('squareMeter110',function(price){
			console.log(2)
			console.log(price)
		})
		salesOffices.trigger('squareMeter88',2000000)
		salesOffices.trigger('squareMeter110',3000000)
		
console 命令行工具 X clear

                    
>
console