这令人非常沮丧,特别是考虑到它的简单性.简单的javascript:
<script type="text/javascript">
var name = new Array("cat","dog");
document.write(name[1]);
</script>
Run Code Online (Sandbox Code Playgroud)
这个脚本打印:"a"(如"cat"中的"a"...又名[0] [1] ......).
然而,当我将其更改为document.write(name)时,它会打印整个数组(即"cat,dog").为什么对于上帝的爱是这个简单的数组无法打印整个字符串(应该是"狗")?!
全局变量name引用现有window.name属性,该属性用于设置浏览器窗口的名称.它将分配给它的任何值转换为字符串:
window.name = [1, 2, 3];
console.log(typeof window.name, window.name);Run Code Online (Sandbox Code Playgroud)
如果您将变量名称更改为例如names它将按预期执行.
name在函数范围范围内使用当然可以正常工作.
| 归档时间: |
|
| 查看次数: |
106 次 |
| 最近记录: |