繁体   English   中英

Java变量内部的嵌套If语句

[英]Nested If Statement Inside Javascript Variable

我有一个JavaScript变量,它是许多不同文本行(html标记)的合并。 见下文。 我要注入此函数的数据对象的image属性中的信息可能为空,也可能不是空白。 因此,我想要一个基本的if语句来检查它是否为空,并输出其他文本。

function(data) {

    var div = [
        <a href="/profile/'+data.message.name+'">',
            if (data.message.image == "") {
                // Some other string
            }
            <img src="/images/profiles/'+data.message.image+'" alt="#"/>',
        </a>',  
    ].join('');
}

是否可以将If语句嵌套在这样的变量中? 如果是这样,正确的语法是什么?

谢谢!

条件(三元)运算符

JavaScript还包含一个条件运算符,该运算符可根据某些条件将值分配给变量。

句法

variablename = (condition) ? value1:value2 

""将是假值,因此您可以使用||尝试相同的值 操作员。

尝试这个:

 function test(data) { var image = 'Some other string'; var div = [ '<a href="/profile/' + data.message.name + '">', '<img src="/images/profiles/' + (data.message.image || image) + '" alt="#"/>', '</a>' ].join(''); alert(div); } test({ message: { name: 'Test Name', image: '' } }); 

我不知道您想编写什么样的代码,您可以使用Jquery append方法来解决问题。

对于您的代码,这将起作用

div = []
div.push '<a href="/profile/'+data.message.name+'">'
if data.message.image == ""
    //do something
    div.push "someting"
div.push '<img src="/images/profiles/'+data.message.image+'" alt="#"/>'
div.push '</a>'
div.join('')

这段代码是用咖啡编写的,但是您会理解的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM