猿问

浏览器和终端(节点)中的 console.log(typeof)

当您在终端中使用节点运行sample.js文件时


var name = 12;

console.log( typeof name )

//number

但在浏览器控制台中却有所不同


var name = 12;

console.log( typeof name )

//string

为什么有区别?!


开满天机
浏览 84回答 1
1回答

慕妹3146593

name是window和 的属性。name当您在控制台中设置时,它实际上是设置将其值window.name转换为字符串,如文档中所述:window.name 将使用 toString 方法将所有值转换为其字符串表示形式。这种情况尤其会发生,因为您像这样设置名称:var name = 12;在浏览器中使用var name =, 而无需任何其他作用域,与编写 , 相同window.name =。但是,如果您要使用const或let声明name,则name不适用于全局范围,即window,并且它将是预期的类型:const name = 4;  console.log(typeof name)
随时随地看视频慕课网APP

相关分类

Html5
我要回答