gpt4 book ai didi

JavaScript ||或带有 undefined variable 的运算符

转载 作者:IT王子 更新时间:2023-10-29 03:21:20 24 4
gpt4 key购买 nike

我最近一直在阅读一篇来自 Opera 的文章。

http://dev.opera.com/articles/view/javascript-best-practices/

在那篇文章中他们写道:

Another common situation in JavaScriptis providing a preset value for avariable if it is not defined, likeso:

if(v){
var x = v;
} else {
var x = 10;
}

The shortcut notation for this is thedouble pipe character:

var x = v || 10;

出于某种原因,我无法让它为我工作。如果没有定义 x = 10,是否真的可以检查是否定义了 v

--谢谢。布莱恩

最佳答案

那篇 Opera 文章对正在发生的事情的描述很差。

如果 vundefinedx 确实会得到 10 的值。如果 v 具有任何“假”值,x 也将为 10

javascript 中的“假”值是:

  • 0
  • null
  • 未定义
  • NaN
  • ""(空字符串)
  • 错误

所以你可以看到除了undefined之外,还有很多情况下x会被设置为10

Here's some documentation详细说明逻辑运算符。 (这个是“逻辑或”。)它给出了几个例子来说明它在这种赋值中的用法。

简单示例:http://jsfiddle.net/V76W6/

var v = 0;

var x = v || 10;

alert( x ); // alerts 10

分配 v 我上面指出的任何错误值,您将得到相同的结果。

关于JavaScript ||或带有 undefined variable 的运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4576867/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com