@hadss/hmrouter-plugin
Version:
HMRouter Compiler Plugin
32 lines (31 loc) • 978 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.StringUtil = void 0;
class StringUtil {
static stringToHashCode(str) {
let hash = 0;
if (str.length === 0) {
return hash;
}
for (let i = 0; i < str.length; i++) {
const char = str.charCodeAt(i);
hash = (hash << 5) - hash + char;
hash |= 0;
}
return hash;
}
static longestCommonPrefixOpt(strs) {
if (!strs || strs.length === 0) {
return '';
}
const shortestStr = strs.reduce((shortest, curr) => curr.length < shortest.length ? curr : shortest, strs[0]);
for (let i = 0; i < shortestStr.length; i++) {
const char = shortestStr[i];
if (!strs.every(str => str[i] === char)) {
return shortestStr.substring(0, i);
}
}
return shortestStr;
}
}
exports.StringUtil = StringUtil;