Concatenating strings with `if` statements in JavaScript

后端 未结 5 794
眼角桃花
眼角桃花 2021-01-01 10:27

I\'m attempting to set up a script to concatenate some variables inside a string if they exist, in order to place the appropriate metadata tags into a rendered HTML

5条回答
  •  死守一世寂寞
    2021-01-01 10:43

    I might do something a little different (a little more akin to templating), mainly because I hate concatenated HTML done with Javascript:

    var metadata_title = "Hello";
    var metadata_author = "Me";
    var metadata_date = "2011-09-07";
    
    var template = "\
                \
                    #title#\
                    \
                    \
                \
                \
                \
                ";
    
    var data = template.replace("#title#", metadata_title != undefined ? metadata_title : "")
                       .replace("#author#", metadata_author != undefined ? metadata_author : "")
                       .replace("#date#", metadata_date != undefined ? metadata_date : "");
    

    Sure, there's a very small amount of additional overhead, but to me, it's way more readable.

提交回复
热议问题