字符串串联()

时间:2015-09-14 20:46:25

标签: javascript

我们遗憾地通过使用JavaScript构建HTML字符串并使用document.write输出数据来进行大量动态网页设计。我偶然发现了一些我的同事编写的代码,如下所示:

var myString = String() + "this is my string" +
            "and I am doing a lot of string concatenation" +
            "doing this the worst way possible"

这些行一直在继续,有时会有数百行硬编码的HTML(带有内联样式和缺少结束标记)。我很好奇的部分是String()。我以前从未见过这种用法,而且我已经写了很长时间的JavaScript了。我问我的同事是什么,他说“它提高了字符串连接的性能,在调试过程中逐步完成,你不会踩到每一行,而是直接到最后”。

现在我经常把这些东西带上一粒盐,但它让我好奇......所以我测试了它。无论开放String()是什么,Chrome都至少会跳到下一个语句。所以我知道这至少是不真实的。

那么A. 是什么?它不是真正的构造函数(就像它一样),当我在控制台中键入String()时,我得到了空字符串""。并且B.他的陈述是否有任何事实可以提高绩效?如果是这样,为什么?

1 个答案:

答案 0 :(得分:2)

来自String - JavaScript | MDN

  

override func viewDidLayoutSubviews() 全局对象是字符串或字符序列的构造函数。

至于在您的示例中使用它是否会提高性能,可能需要记住两件事:

  • 它是否会提高性能可能取决于浏览器或其他JavaScript运行时环境。
  • 可能无法提高性能以保证使用它。