gpt4 book ai didi

中的 Javascript 代码无法访问 中的数组

转载 作者:行者123 更新时间:2023-11-28 13:45:19 24 4
gpt4 key购买 nike

我是 Javascript 的初学者,正在尝试理解为什么有些东西不起作用。我创建了一个简单的页面,其中包含一些引用数组 <head>然后我可以在 <body> 中访问该部分所以头部看起来像这样:

<!DOCTYPE html>
<html>
<head>
<script>
var cities = [ "London", "New York" ];
</script>
</head>

我想使用这个数组来驱动 HTML 正文中的下拉菜单,所以我想我应该使用这个:

<body>
<select id="dd_city">
<script>
for( i = 0; i < cities.length; i++)
{
document.write( "<option value=" + i + ">" + cities[i] + "</option>" )
}
</script>
</select>
...

我认为这是合理的,并且是基于我在网上找到的示例。但是,我发现它只是产生一个空的下拉菜单,就好像数组被视为空一样。我误解或弄错了什么?

最佳答案

你的语法错误。 JavaScript 中没有关键字 global

更改为

<script>
var cities = [ "London", "New York" ];
</script>

您的语法应该在控制台中给出错误!

未在函数作用域内定义的变量会自动添加到 window 对象中,该对象在浏览器环境中是全局作用域。因此无需定义诸如 global 关键字之类的内容。

其他说明:

  • 定义全局变量被认为是不好的做法。当您加载多个脚本时,它可能会导致变量冲突。
  • document.write 通常不是一个好主意。最好使用类似 innerHTML 的东西在页面中获取动态内容。

关于<body> 中的 Javascript 代码无法访问 <head> 中的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14777265/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com