为什么parseInt()有时会返回一个字符串?

时间:2016-06-15 15:45:02

标签: javascript type-conversion parseint

这是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"

1 个答案:

答案 0 :(得分:3)

global variable name is a special variable in browsers代表当前窗口的名称,并且始终是一个字符串。

根据经验,在an IIFE中包装脚本通常是个好主意,因此它们具有本地范围,并且您不会与其他脚本和浏览器中的变量发生冲突。这样做可以避免这个问题。