Javascript数组命名状态不适用于谷歌浏览器
这个问题在这里已经有了答案:
这个问题已经在这里解答。
<html>
<body>
<script>
function test(){
var array = [1, 2, 3];
document.write("Type of [" + array + "] : " + (typeof array) + "<br />");
document.write("Value of array.length : " + array.length + "<br />");
document.write("<br /><br />");
var status = [1, 2, 3];
document.write("Type of [" + status + "] : " + (typeof status) + "<br />");
document.write("Value of status.length : " + status.length + "<br />");
}
test();
</script>
</body>
</html>
如果您尝试使用上面提供的代码,则它会按预期工作,因为变量状态的范围仅限于方法状态的本地范围。 在你的示例中,变量的范围是全局的(范围是窗口)。
问题是,在Chrome中, window
(全局对象)具有status
属性,由于某些原因,Chrome似乎指的是您的status
变量。 将status
重命名为其他任何内容,比如myStatus
,都会给你预期的结果。
在JavaScript中,我认为你想要:
var array = new Array(1, 2, 3);
链接地址: http://www.djcxy.com/p/1489.html
上一篇: Javascript array named status not working in google chrome
下一篇: How does JavaScript closure work in the following example?