困惑的javascript新手可能是一个非常基本的问题...
为什么
var hasthisvalue = null;
if (hasthisvalue)
print("hasthisvalue hs value");
和
var hasthatvalue = "";
if (hasthatvalue)
print("hasthatvalue has value");
什么都不打印,但是如果我将两者结合起来
var combined = "hasthisvalue" + "hasthatvalue";
if (combined)
print ("combined has value");
是吗?
或更直接地:
var combined = null + "";
if (combined)
print ("combined has value");
如果仅添加两个没有值的变量,为什么“组合”具有值?我想念什么?
最佳答案
当您分别比较它们时,它们在false
检查中都转换为if
。当您组合它们时,null
成为字符串"null"
,因此它们的串联是字符串"null"
,它不会转换为false
关于javascript - 为什么var Combined = null +“”具有值?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10773778/