为什么这个随机引号生成器中没有定义 const 变量 localQuotes?
Why is const variable localQuotes not defined in this random quotes generator?
问题在这里解释得更清楚:
我正在使用 JavaScript 创建一个简单的随机报价生成器。我在一个名为“quotes.js”的文件中的一个数组中有数百个引号,然后在一个名为“script.js”的文件中使其工作的实际函数都链接到“[=57=” ]“ 页。我在我的“script.js”页面中收到错误,该页面应该允许从 quotes.js 中的数组中获取随机引号,并在每次刷新页面时在屏幕上显示该随机引号(您会在控制台中看到引用而不是实际页面)。有人可以向我解释为什么会出现此错误以及如何定义变量 localQuotes 吗?
这是我在 Chrome 的 Developers Tools Console 选项卡中遇到的错误:
Uncaught ReferenceError: localQuotes is not defined
at newQuote (script.js:3)
at script.js:7 newQuote @ script.js:3 (anonymous) @ script.js:7
这是我来自 script.js 的代码:
function newQuote() {
const quote = localQuotes[Math.floor(Math.random() * localQuotes.length)];
console.log(quote);
}
newQuote();
这里是 quotes.js 中数组的简化版本:
const localQuotes = [
{
text: 'The greatest remedy for anger is delay.',
author: 'Seneca',
},
{
text: 'Growth itself contains the germ of happiness.',
author: 'Pearl Buck',
},
{
text: "You can do what's reasonable or you can decide what's possible.",
author: null,
},
];
最后我在 html 文件中链接 JavaScript:
<!-- Script -->
<script>src="quotes.js"</script>
<script src="script.js"></script>
您的 quotes.js 需要授予对变量的全局访问权限才能使其正常工作。您应该这样做:
window.localQuotes = {...}
哦,你的脚本标签是错误的,你那里有一个错字,我在写问题时预计它是一个错字所以如果它仍然不起作用,请更正那个错字。
我明白了。它在 html 标签中。
而不是:
<script>src="quotes.js"</script>
<script>src="script.js"</script>
需要:
<script src="quotes.js"></script>
<script src="script.js"></script>
已解决!
问题在这里解释得更清楚: 我正在使用 JavaScript 创建一个简单的随机报价生成器。我在一个名为“quotes.js”的文件中的一个数组中有数百个引号,然后在一个名为“script.js”的文件中使其工作的实际函数都链接到“[=57=” ]“ 页。我在我的“script.js”页面中收到错误,该页面应该允许从 quotes.js 中的数组中获取随机引号,并在每次刷新页面时在屏幕上显示该随机引号(您会在控制台中看到引用而不是实际页面)。有人可以向我解释为什么会出现此错误以及如何定义变量 localQuotes 吗?
这是我在 Chrome 的 Developers Tools Console 选项卡中遇到的错误:
Uncaught ReferenceError: localQuotes is not defined at newQuote (script.js:3) at script.js:7 newQuote @ script.js:3 (anonymous) @ script.js:7
这是我来自 script.js 的代码:
function newQuote() {
const quote = localQuotes[Math.floor(Math.random() * localQuotes.length)];
console.log(quote);
}
newQuote();
这里是 quotes.js 中数组的简化版本:
const localQuotes = [
{
text: 'The greatest remedy for anger is delay.',
author: 'Seneca',
},
{
text: 'Growth itself contains the germ of happiness.',
author: 'Pearl Buck',
},
{
text: "You can do what's reasonable or you can decide what's possible.",
author: null,
},
];
最后我在 html 文件中链接 JavaScript:
<!-- Script -->
<script>src="quotes.js"</script>
<script src="script.js"></script>
您的 quotes.js 需要授予对变量的全局访问权限才能使其正常工作。您应该这样做:
window.localQuotes = {...}
哦,你的脚本标签是错误的,你那里有一个错字,我在写问题时预计它是一个错字所以如果它仍然不起作用,请更正那个错字。
我明白了。它在 html 标签中。
而不是:
<script>src="quotes.js"</script>
<script>src="script.js"</script>
需要:
<script src="quotes.js"></script>
<script src="script.js"></script>
已解决!