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

Javascript 为什么parseInt()有时会返回字符串?,javascript,type-conversion,parseint,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

这是从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"
表示当前窗口名称且始终为字符串的

根据经验,通常最好将脚本封装在其中,以便它们具有本地范围,并且不会与其他脚本和浏览器中的变量发生冲突。这样做可以避免此问题。

表示当前窗口名称且始终为字符串的


根据经验,通常最好将脚本封装在其中,以便它们具有本地范围,并且不会与其他脚本和浏览器中的变量发生冲突。这样做可以避免此问题。

始终在隔离的环境中测试代码。全球环境并非孤立的。另外,由于您已确定问题不在
parseInt
中,因此标题具有误导性。请始终在隔离环境中测试代码。全球环境并非孤立的。此外,由于您已确定问题不在
parseInt
中,因此标题具有误导性。