|
在《從 if else 到 switch case 再到抽象》這篇文章里面說到,解決 if else 和 switch case 分支過多的一個方法,就是做一個專用的 dispatcher ,讓它來負責進行篩選與轉發。至于篩選條件的描述,模式匹配是一種很常見也很好用的方式。在 JavaScript 里面,用 JSON 來描述模式又是相當方便的事情,所以我們來做一個 JSON 模式匹配工具吧。
用例設計
作為一個 dispatcher ,我們只需要兩個方法: notify
和 capture
。一個最簡單的用例是這樣的:
1 Dispatcher.capture({
2 "status": 200,
3 "command": "message"
4 }, function(json) { /* display message */ });
5
6 Dispatcher.notify({
7 “status": 200,
8 "command": "message",
9 "content": {
10 "from": "user1",
11 "to": "user2",
12 "text": "hello"
13 }
14 });
it知識庫:用 JavaScript 對 JSON 進行模式匹配 (Part 1 - 設計),轉載需保留來源!
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。