我傾向於發現使用.split通常會在這些情況下創建更多可讀代碼。
如果使用window.location.hash到最初讓你的數據,你會留下
#path=folder/?folderId=klafjlka
省去了第一批的聯合國需要的東西。剩下的事情可以簡單地通過拆分和循環拆分來完成。
//Remove the initial hash from the window.location.hash
var hash = window.location.hash.substr(1),
//Split it down so we have ["path=folder","folderId=klafjlka"]
paramSplit = hash.split("/?");
var params = {};
for (var x=0; x<paramSplit.length; x++){
//Split it at the equals
var split = paramSplit[x].split("=");
params[split[0]]=split[1];
}
console.log(params);
PARAMS應該返回
{
path: "folder",
folderId: "klafjlka"
}
這是很容易使用無論你的目的是。
[你有什麼嘗試?](http://mattgemmell.com/2008/12/08/what-have-you-tried/) – epascarello
到目前爲止我已經能夠路由靜態URL,例如/ albumList但我真的不知道如何爲傳遞參數的動態URL編寫條件 – sublime