javascript设计模式笔记-16 命令模式

简述

例子

就拿一个电话的功能来作例子吧。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
var phone = {
call : function (name, number) {
alert('给 '+ name +'('+ number +')拨打电话。');
},
sms : function (name, number) {
alert('给 '+ name +'('+ number +')发送信息。');
}
}

// 增加命令模式
phone.execute = function (command) {
return this[command.action](command.name, command.number);
};

phone.execute({
action: 'call',
name: '小明',
number: '15555555555'
});

phone.execute({
action: 'sms',
name: '小明',
number: '15555555555'
});