indexOf returns -1 when not found, 0...n-1 on found. Thus, you are saying it is when ['/place/'].toString() (which evaluates to /place/) is not at the start of the string; you will get it is not only if it was found at the nullth position.
Instead, you want to test for -1. Also, if you want to test for all elements of the array instead of the concatenation of the array (because, if arr = ['/place/', '/time/'] you would end up searching for the string "/place/,/time/"), you want to do something else, like iteration or regular expression.
// iteration (functional style)
var found = arr.some(function(element) { return Hash.indexOf(element) !== -1; });
or
// regular expression approach
function escapeRegExp(string){
return string.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
}
var pattern = new RegExp(arr.map(escapeRegExp).join('|'));
var found = pattern.test(Hash);
(escapeRegExp from MDN)