代码之家  ›  专栏  ›  技术社区  ›  Curcuma_

在javascript中创建吸收字符串

  •  0
  • Curcuma_  · 技术社区  · 8 年前

    我对吸收弦的定义如下: 当与任何其他字符串连接时,结果是空字符串(另一个吸收元素)。

    我知道javascript中可能不存在这样的元素,但是我想出了一个简单的逻辑来模拟

    "_".repeat(str.length/str.length)+ str+ "_".repeat(str.length/str.length)
    

    例子:

    var str = "HP";
    var result = "_".repeat(str.length/str.length)+ str+ "_".repeat(str.length/str.length);
    [out]: "_HP_"
    str = "";
    var result = "_".repeat(str.length/str.length)+ str+ "_".repeat(str.length/str.length);
    [out]: ""
    

    其目的仅仅是在字符串之外有下划线,只有当它们存在时。

    当许多字符串与一个分隔符连接时,这非常有用,并且我们希望避免使用类似于if-else块的代码。

    有较短的表格吗?

    1 回复  |  直到 8 年前
        1
  •  2
  •   Nina Scholz    8 年前

    你可以用一个 logical AND && wich检查字符串 truthyness .

    function pad(string) {
        return string && '_' + string + '_';
    }
    
    console.log(pad("HP"));
    console.log(pad(""));