没有比普通连接用HTML标记(或括号,引号或空格)包围字符串更好的方法吗?
非常相似的问题值得注意,值得拥有自己的API函数:
编辑:对于Javascript的创建者来说,这些问题显然不是愚蠢的。
谁更可能是愚蠢的:Javascript的创建者还是你?
我希望我能写出类似的东西:
div.innerHTML = rawstr.split("\n\n").join("", "<p>", "</p>");
newstr = oldstr.split(/\s+“|”\s+/g).join(" ", "\"", "\"");
var str = "Joan – despite her curly hair – is loved.";
return str.split(/\s+–/s+/g).join(" ", "(", ")");
var str = "Joan (despite her curly hair) is loved.";
return str.split(/\s+\(|\)/s+/g).join(" – ");
←哦,等等......我已经可以做到这一点了。...而不是:
div.innerHTML = rawstr.split("\n\n").map(str => "<p>" + str + "</p>")).join("");
newstr = oldstr.split(/\s+“|”\s+/g).map(str => "\"" + str + "\"")).join(" ");
var str = "Joan – despite her curly hair – is loved.";B)
var p = str.split(/\s+–/s+/g);
return p[0] + " " + "(" + p[1] + ")" + " " + p[2];
var str = "Joan – despite her curly hair – is loved.";
var p = str.split(/\s+–/s+/g);
p[1] = "(" + p[1] + ")";
return p.join(" ");
当我能做到这一点时,我的生命就会完整。
答案 0 :(得分:-2)
使用ES6模板文字更容易:
div.innerHTML = rawstr.split("\n\n").map(str => `<p>${str}</p>`)).join("");
newstr = oldstr.split(/\s+“|”\s+/g).map(str => `"${str}"`)).join(" ");
`${p[0]} (${p[1]}) ${p[2]}`