这是javascript控制台在chrome中的新标签页上的直接复制/粘贴:
> var name = parseInt(prompt("enter a number"), 10);
undefined
> name
"77"
> var x = parseInt(prompt("Enter a number"), 10);
undefined
> x
77
出于某种原因,只有在我使用变量名称" name"时才会出现这种情况。它甚至在常规任务中保持字符串:
>name
"453"
>name = 77;
77
>name
"77"
答案 0 :(得分:3)
global variable name
is a special variable in browsers代表当前窗口的名称,并且始终是一个字符串。
根据经验,在an IIFE中包装脚本通常是个好主意,因此它们具有本地范围,并且您不会与其他脚本和浏览器中的变量发生冲突。这样做可以避免这个问题。