我在Javascript示例中看到了这个
my_var = my_var || 69
我认为这意味着检查my_var是否存在,如果没有将my_var设置为69.这是这种情况吗?是否有任何关于此的文档,很难表示为google / SO搜索,有人可能指向我的文档方向或重复QA吗?
(这个例子没有使用69,这只是我的粗鲁)
答案 0 :(得分:12)
在JS控制台中轻松尝试。
var my_var
my_var = my_var || 69
//69
var my_var = 5
my_var = my_var || 69
//5
只有当变量当前带有 falsy 值时才设置变量。
false
null
undefined
''
答案 1 :(得分:0)
大多数时候它被称为“默认”。值“默认”为||
之后的值。操作是松散的比较,就像您使用if
对==
语句所做的那样。
任何不狡猾的事情:
''
)被认为是真的。如果第一个值不是这些中的任何一个,那么它就是指定的值。如果是,则分配右侧的值。
答案 2 :(得分:0)
||
or
运算符有两个操作数(左和右)。它检查左边的值是否真实,如果是,则将该值赋给变量,否则将右手值赋给变量。
var my_var = false;
my_var = my_var || true;
//true