内联声明的JavaScript变量的范围

以下是问题脚本:

这来自HTML文件:

<script type="text/javascript">
    var devices_record = "some string";
</script>
<script type="text/javascript" src="/js/foo.js"></script>

这来自foo.js:

function bar () {
    devices_record = "assign new string";
}

HttpFox的错误报告是未定义devices_记录.是什么赋予了?我认为devices_ record将是一个全局范围的变量,因此应该可以从任何地方访问它.

解决方法:

您的测试用例对我有用.这是我的完整测试:

foo.js:

function bar () {
    alert(devices_record);
    devices_record = "assign new string";
    alert(devices_record);
}

foo.html:

<html>
<head>
    <script type="text/javascript">
    var devices_record = "some string";
    </script>
    <script type="text/javascript" src="foo.js"></script>
</head>
<body onl oad="bar()">
</body>

我收到两个警报,第一个显示“某些字符串”,第二个显示“分配新字符串”.

您的问题在代码的其他地方.

上一篇:javascript-JS函数创建并推入数组-唯一的第一个元素是NaN


下一篇:Sphinx在windows下安装使用[支持中文全文检索]