当我在控制台中运行 var name = 'jose' !== '';
时,它会返回 "true"
为什么它返回一个字符串的 "true"
而不是布尔值的 true
?
我尝试了另一个变量名,并返回了布尔值。
例如: var bobby = 'bob' !== '';
当我在控制台中运行 var name = 'jose' !== '';
时,它会返回 "true"
为什么它返回一个字符串的 "true"
而不是布尔值的 true
?
我尝试了另一个变量名,并返回了布尔值。
例如: var bobby = 'bob' !== '';
因为name
是window.name
。这是一个特殊的变量,它始终是一个字符串。在任何空的浏览器控制台中输入并运行name
命令,你将得到""
。
你正在重新分配它的值。
https://developer.mozilla.org/en-US/docs/Web/API/Window/name
变量name
。它指的是window.name,也就是窗口的名称。
还有变量document
window.name,window.document [不能修改变量名为window.name,它是一个字符串]
不要使用 name 作为全局变量。
例如:
var name = {Name : "dd"};
console.log(name.Name);//Since it's a primitive won't work
var bobby
是一个不同的变量名,因此它不在字符串中。 - user5797159window.bobby
。 - ryanpcmcquen