我在某个地方听说我现在记不起来了,将较长的琴弦缩短为较短的琴弦是一个聪明的主意。我应该这样做吗?有什么优点和缺点?
样品:
var str = "some extremly long string for the sample I am making for this Stack Overflow question. Must add more words to make longer.";
alert(str);
或
var str1 = "some extremely long string";
var str2 = "for the sample I am making";
var str3 = "for this Stack Overflow question.";
var str4 = "Must add more words to make longer.";
alert(str1 +str2 +str3 +str4);
答案 0 :(得分:3)
您的两个版本不相同,因为连接版本缺少空格。
如果你想打破字符串,加入通常被认为是一种好习惯:
var str = [
"some extremely long string",
"for the sample I am making",
"for this Stack Overflow question.",
"Must add more words to make longer."
].join(" ");
我看到这种模式相当多,而且IMO确实更具可读性。
随着ES6的发展,更多人可能会开始使用模板字符串提供的多线功能:
var str = `some extremely long string
for the sample I am making
for this Stack Overflow question.
Must add more words to make longer.`;
答案 1 :(得分:0)
我能想到的唯一理由就是可读性。在源代码中有一个非常长的行只是不太可读。您的问题巧妙地说明了这一点:在第一个示例中,必须依靠水平滚动来读取字符串;第二个例子没有这样的问题。
有关如何在JavaScript中拆分长字符串文字的讨论,请参阅this answer到另一个问题。
答案 2 :(得分:0)
我不知道有任何这样的优化。如果是可读性问题,可以使用反斜杠来编写多行字符串文字:
var string = "some extremely long string\
for the sample I am making\
for this Stack Overflow question.\
Must add more words to make longer.";