JS实现简单路由器功能的方法
本文实例讲述了JS实现简单路由器功能的方法。分享给大家供大家参考。具体实现方法如下:
varwawa={};
wawa.Router=function(){
functionRouter(){
}
Router.prototype.setup=function(routemap,defaultFunc){
varthat=this,rule,func;
this.routemap=[];
this.defaultFunc=defaultFunc;
for(varruleinroutemap){
if(!routemap.hasOwnProperty(rule))continue;
that.routemap.push({
rule:newRegExp(rule,'i'),
func:routemap[rule]
});
}
};
Router.prototype.start=function(){
console.log(window.location.hash);
varhash=location.hash,route,matchResult;
for(varrouteIndexinthis.routemap){
route=this.routemap[routeIndex];
matchResult=hash.match(route.rule);
if(matchResult){
route.func.apply(window,matchResult.slice(1));
return;
}
}
this.defaultFunc();
};
returnRouter;
}();
varrouter=newwawa.Router();
router.setup({
'#/list/(.*)/(.*)':function(cate,id){
console.log('list',cate,id);
},
'#/show/(.*)':function(id){
console.log('show',id);
}
},function(){
console.log('defaultrouter');
});
router.start();
希望本文所述对大家的javascript程序设计有所帮助。
热门推荐
3 庆双节祝福语简短
10 喜得新房文案祝福语简短
11 启程出发路途祝福语简短
12 女儿结婚账单祝福语简短
13 男士送花祝福语大全简短
14 离别简短的祝福语大全
15 简短祝福语大全暖心
16 周年庆典祝福语致辞简短
17 舅妈生日红包祝福语简短
18 教练生日祝福语 简短独特