How to avoid 'Uncaught ReferenceError: ? is undefined'?
How to avoid 'Uncaught ReferenceError: ? is undefined'?
我在每一页的底部都有一个脚本 (config.js)。但是,该脚本包含并非在每个页面上都使用的代码。控制台 returns 未使用或未声明的变量为未定义。
let currentURL = document.location.href;
function redirectURL() {
if (currentURL.indexOf('dogs.html') > -1) {
redirect.innerHTML = `<a href="/pets/cats.html">Cats</a>`;
} else {
redirect.innerHTML = `<a href="/pets/dogs.html">Dogs</a>`;
}
}
redirectURL();
这是返回的内容。
我该如何解决这个问题?
您需要在尝试使用之前检查 redirect
元素是否存在。
function redirectURL() {
if (typeof redirect == 'undefined') {
return;
}
if (currentURL.indexOf('dogs.html') > -1) {
redirect.innerHTML = `<a href="/pets/cats.html">Cats</a>`;
} else {
redirect.innerHTML = `<a href="/pets/dogs.html">Dogs</a>`;
}
}
这将允许该函数在未定义 redirect
.
的页面上无错误地运行
我在每一页的底部都有一个脚本 (config.js)。但是,该脚本包含并非在每个页面上都使用的代码。控制台 returns 未使用或未声明的变量为未定义。
let currentURL = document.location.href;
function redirectURL() {
if (currentURL.indexOf('dogs.html') > -1) {
redirect.innerHTML = `<a href="/pets/cats.html">Cats</a>`;
} else {
redirect.innerHTML = `<a href="/pets/dogs.html">Dogs</a>`;
}
}
redirectURL();
这是返回的内容。
我该如何解决这个问题?
您需要在尝试使用之前检查 redirect
元素是否存在。
function redirectURL() {
if (typeof redirect == 'undefined') {
return;
}
if (currentURL.indexOf('dogs.html') > -1) {
redirect.innerHTML = `<a href="/pets/cats.html">Cats</a>`;
} else {
redirect.innerHTML = `<a href="/pets/dogs.html">Dogs</a>`;
}
}
这将允许该函数在未定义 redirect
.