如何使用Javascript在字符串中包含条件



我知道对于奇异结果,我可以这样做:

return "this is a condition test within a string - " +  {0:'⚪',1:'🟡',2:'🔴',3:'&#x1f7e2',8:'',9:''}[event.FlagInd.toString()]

其中0,1,2等为变量event.FlagInd的值,结果为引号内的值,如'⚪'

在上面的例子中,event.FlagID中的值为1,将1替换为🟡——一个黄色的球

我正在尝试做类似的事情,"打开或关闭";

我当前的尝试返回无效字符串或字符串没有正确形成。

return
"<strong style="font-size:18px;">" +
{
0: '', default: "<a href=" + "https://www.marinetraffic.com/en/ais/details/ships/imo:" + event.imo +
"/vessel:" + event.text + "" target="_blank">" + event.text + "</a>"' }[event.imo.toString()] +
"</strong>" + ... etc

我想做的是返回一个空字符串,如果event.IMO = 0的值,但要返回这整个html字符串,如果值是0以外的东西…

"<a href="https://www.marinetraffic.com/en/ais/details/ships/imo:" + event.imo + "/vessel:" + event.text + "" target="_blank">" + event.text + "</a>"

多亏了@Ouroborus,我才能做到……按照这个例子:

function myResult(IMO, text){
return "Answer is " + 
(IMO.toString() == 0 ? "nothing here" :
"<strong style="font-size:18px;">" +
"<a href="https://www.marinetraffic.com/en/ais/details/ships/imo:" + IMO +
"/vessel:" + text + "" target="_blank">" + text + "</a>" + 
"</strong>")
}

document.write(myResult("0123","myShip"))

从"0123"0";给我"这里什么都没有",否则它就完全是HTML。只是要确保你的HTML格式是正确的字符串。

最新更新