function tactics(type,a,b) {
let t = {
add: function (a,b){
return a+b
},
minus: function (a,b){
return a-b
},
mul: function (a,b) {
return a*b
},
division: function (a,b){
return a/b
}
}
return t[type](a,b)
}
console.log(tactics('minus',10,50))
function status (e) {
let s = {
_status: '',
operation: {
add: function (){
return '1'
},
minus: function (){
return '2'
},
mul: function() {
return '3'
},
division: function (){
return '4'
}
},
run: function(){
return this.operation[this._status]()
}
}
s._status = e
return s
}
console.log(status('mul').run())