jQuery 语句中的三元运算符
Ternary Operator in jQuery statement
我是 Javascript、CSS、HTML 和 jQuery 的新手,遇到了使用 condition ? if true : if false
的这行代码声明,我正在努力理解它。等效的 if() {} else {}
语句是什么样的?这是代码行:
$('.app-container').css('background', this.background ? `url(${this.background.get('Href')})` : `url(${DefaultImage.Background}`);
感谢任何解释:)
您需要将传递给 url()
的第二个参数扩展为 if
、else
,因为它首先被评估:
if (this.background)
bgurl = `url(${this.background.get('Href')})`
else
bgurl = `url(${DefaultImage.Background})`
$('.app-container').css('background', bgurl);
如果您正在寻找传统 if-else
的确切外观:
if (this.background)
$('.app-container').css('background', `url(${this.background.get('Href')})`);
else
$('.app-container').css('background',`url(${DefaultImage.Background}`);
在 javascript 中,三元运算符遵循以下基本前提:
(condition) ? (what will happen if condition evaluates to true) : (what will happen if condition evaluates to false)
有时它们可能难以破译,但在适当的情况下(比如这个)它们可以让您免于编写 'extra' 代码。
我是 Javascript、CSS、HTML 和 jQuery 的新手,遇到了使用 condition ? if true : if false
的这行代码声明,我正在努力理解它。等效的 if() {} else {}
语句是什么样的?这是代码行:
$('.app-container').css('background', this.background ? `url(${this.background.get('Href')})` : `url(${DefaultImage.Background}`);
感谢任何解释:)
您需要将传递给 url()
的第二个参数扩展为 if
、else
,因为它首先被评估:
if (this.background)
bgurl = `url(${this.background.get('Href')})`
else
bgurl = `url(${DefaultImage.Background})`
$('.app-container').css('background', bgurl);
如果您正在寻找传统 if-else
的确切外观:
if (this.background)
$('.app-container').css('background', `url(${this.background.get('Href')})`);
else
$('.app-container').css('background',`url(${DefaultImage.Background}`);
在 javascript 中,三元运算符遵循以下基本前提:
(condition) ? (what will happen if condition evaluates to true) : (what will happen if condition evaluates to false)
有时它们可能难以破译,但在适当的情况下(比如这个)它们可以让您免于编写 'extra' 代码。