習慣了.net編程,c#的枚舉很好用,無論管理上,可讀上,易用上都非常強大。 JS作為弱類型解析語言,並沒有嚴格的數據類型限定。 “枚舉”在JS中並不存在的。 通過定義上,枚舉是一種類常量的存在,只不過vs.net可以自動導航到枚舉的數據類型存在,並且自動給與用戶提供選擇。 vs.net2008增加了js的導航,那么用json模擬枚舉功能就有存在的必要了。 只是,JS的導航還無法做到判斷“枚舉”類型,所以無法默認就提供“枚舉”選項,不過從功能上可讀性上管理上還是遠遠超過諸如1,2,3,4的表示等等了。 以下為例子(共享方式: 0->不共享,1->我和好友,2->所有人): //寫法1: var ShareType = ...{OnlyMe : 0 ,IAndFriend : 1 ,All : 2 }; //寫法2: var ShareType = ...{}; ShareType.OnlyMe = 0; ShareType.IAndFriend = 1; ShareType.All = 2;
====================================
一般寫在公共的js方法中:
//附件分類 var fileCatalog = { //預約單 reservation : 0, //健康告知書 health : 1, //用車預定 car : 2, //照會資料 diplomatic : 3, //理賠資料 claim : 4, //銀行開戶 bank : 5, //其他 others : 6 }
所有頁面引用公共js,每個頁面的js都可共用公共js
if (type == fileCatalog.reservation) { reservationFiles.push(fileData); } else if (type == fileCatalog.car) { carFiles.push(fileData); } else if (type == fileCatalog.others) { otherFiles.push(fileData); } else if (type == fileCatalog.health) { healthFiles.push(fileData); } else if (type == fileCatalog.bank) { bankFiles.push(fileData); }