options.domain ? '; domain=' + options.domain : '',
有人可以解释一下放的目的是什么吗?在 options.domain 之后。我知道这很简单。但我对 JS 并不陌生。
options.domain ? '; domain=' + options.domain : '',
有人可以解释一下放的目的是什么吗?在 options.domain 之后。我知道这很简单。但我对 JS 并不陌生。
这称为(单行语句)ternary operator
?:
if..else
句法:
var variableName = testCondition ? op1 : op2;
我猜你错过了分配的变量
var dom = options.domain ? '; domain=' + options.domain : '';
相当于
if (options.domain) {
dom = '; domain=' + options.domain
}
else {
dom = '';
}
它被称为三元运算符,本质上它们是等价的:
// Item 1
var x = options.domain ? '; domain=' + options.domain : '';
// Item 2
var x;
if (options.domain) {
x = '; domain=' + options.domain;
} else {
x = '';
}
三元运算符就像简单的 if,else 语句,如:
condition ? option1 : option2 ;
类似于
if(condition)
{
option1;
}
else
{
option2;
}
这是一种类似的if
声明。
return condition ? x : y;
三元运算符逻辑是使用"(condition) ? (true return value) : (false return value)"
语句来缩短 if/else 结构的过程。
那就是所谓的ternary operator
。它根据条件返回两个表达式之一。
句法:
test ? expression1 : expression2
测试:
任何布尔表达式。
表达式1:
如果 test 为真,则返回一个表达式。可能是逗号表达式。
表达式2:
如果 test 为 false,则返回表达式。多个表达式可以通过逗号表达式链接。