ITPub博客

首页 > IT职业 > IT图书 > JavaScript里嵌入批量字符串常量的方法

JavaScript里嵌入批量字符串常量的方法

IT图书 作者:hblyl 时间:2021-09-09 09:11:46 0 删除 编辑

  在JavaScript文件里嵌入大量字符串常量是经常遇到的事。有时为了省事,就把一些界面的HTML和CSS直接写在JS文件里。数量少还好,多的话就密密麻麻的一坨文字,讲究美观的文艺青年们,会用大量的字符连接符号甚至加上缩进,强制换成好几行。例如:

var html =
    '
' +         '

Hello

' +         '

World'

' +     '
';

  这还好,要是字符串里有不少双引号单引号,那就更麻烦了,各种转义字符看的眼花缭乱。

  其实有个不怎么起眼的小技巧,就能解决这个问题。大家总认为字符串必须在"..."或'...'里面,这点没错。但还有一个地方的字符串也能当非代码语义保存下来,那就是一个function的toString,把整个函数的代码当字符串输出——其中的注释部分当然也是保留的!

  所以我们写个空函数,里面就一个注释,其中就是我们想要的常量内容。toString后加一个正则就可以提取我们想要的!

  马上试试:

var RES_CODE = _TEXT(function(){/*
    #include 

    int main()
    {
        std::cout 
        Hello
        
        
        
        
            
                com.adobe.flexbuilder.project.flexbuilder
                
                
            
            
                com.adobe.flexbuilder.project.apollobuilder
                
                
            
        
    
*/});

function _TEXT(wrap) {
    return wrap.toString().match(//*s([sS]*)s*//)[1];
}

alert(RES_CODE);
alert(RES_POEM);
alert(RES_XML);


  OK!就是Chrome里把注释每行前面的Tab去掉了,如果仅仅是放代码的话问题也不大~ 当然有个前提是字符里不能出现*/

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/3373/viewspace-2808545/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-08-14

  • 博文量
    71
  • 访问量
    543