Javascript中为什么 undefined||‘World‘ 表示的是 World ?

对于逻辑或运算符 ||,其规则是如果左操作数为真(truthy),则返回左操作数的值;如果左操作数为假(falsy),则返回右操作数的值。

在 JavaScript 中,以下值被视为假(falsy):

  • false:布尔值 false
  • null:表示一个空对象指针的特殊关键字
  • undefined:表示未定义的值
  • 0:数字零
  • NaN:非数值

如果左操作数为假(falsy),那么表达式 y || 'World' 的结果将为 'World',无论右操作数 'World' 是什么值。

现在来看你提到的情况 undefined || 'World',在这种情况下,左操作数 undefined 是假(falsy)的,因此结果将为 'World'。同样地,false || 'World' 的结果也是 'World',因为 false 也是假(falsy)的。

这是因为逻辑或运算符会返回第一个真(truthy)的操作数。如果左操作数为假(falsy),那么会继续计算右操作数,然后返回第一个真(truthy)的操作数。

所以,undefined || 'World'false || 'World' 的结果都是 'World',因为它们的左操作数都是假(falsy)值。

猜你喜欢

转载自blog.csdn.net/liuruiaaa/article/details/131763072