浏览器中的奇怪行为:var name将所有内容转换为字符串

时间:2017-07-27 20:37:03

标签: javascript

从今天开始,我相信鬼魂。 有人可以用Chrome(版本59.0.3071.115)或Firefox(54.0(64位))解释以下JS行为吗?

为什么?

var name = 10;
console.log(typeof name); // string
console.log(name);        // "10"

let相同:

let name = 10;
console.log(typeof name); // number
console.log(name);        // 10

我相信,使用window.name并将任何输入转换为字符串。但是,为什么var name不是局部变量并隐藏全局变量?

谢谢。

0 个答案:

没有答案