javascript - 为什么我不能定义一个名为“status”的数组?
问题描述
如题。有人能告诉我为什么吗?非常感谢!
<script type="text/javascript">
var status=[1,2,3];
console.log(typeof(status));
console.log(status); // the result is "1,2,3"
var normal_array=[1,2,3];
console.log(typeof(normal_array));
console.log(normal_array); // the result is "(3) [1,2,3]"
</script>
解决方案
设置浏览器底部状态栏中的文本或返回之前设置的文本。
此属性在 Firefox 和其他一些浏览器的默认配置中不起作用:设置 window.status 对状态栏中显示的文本没有影响。要允许脚本更改状态栏文本,用户必须在 about:config 屏幕中将 dom.disable_window_status_change 首选项设置为 false。
它不能是字符串以外的任何东西,所以当你使用
var status = [1,2,3];
它会立即转换为字符串。
请注意,顶层的const
and let
s 不会分配给全局对象:
const status = [1,2,3];
console.log(typeof status);
另一种选择是简单地将您status
放入 IIFE:
(() => {
var status = [1,2,3];
console.log(typeof status);
})();