首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么要用字符串插值?

为什么要用字符串插值?
EN

Stack Overflow用户
提问于 2011-05-22 14:01:17
回答 1查看 7.4K关注 0票数 2

可能重复:

When is it better to use String.Format vs string concatenation?

嗨,我正在为开源Javascript库编写字符串插值。我只是了解了字符串插值的概念,有点困惑吗?为什么我们要花这么多时间来做字符串插补呢?它的优点是什么?

另外,在Javascript中有任何关于字符串内插的资源,您可以指向我吗?和我分享?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-05-22 14:31:31

字符串内插也称为字符串格式。优点是:

1.代码清晰度

代码语言:javascript
复制
    "<li>" + "Hello " + name + ". You are visitor number" + visitor_num + "</li>";

比阅读和编辑更难

Java/.Net方式

代码语言:javascript
复制
String.Format("<li> Hello {0}.  You are visitor number {1}. </li>", name, visitor_num);

python方式

代码语言:javascript
复制
"<li> Hello %s. You are visitor number %s</li>" % (name, visitor_num)

JavaScript流行方式

代码语言:javascript
复制
["<li>","Hello",name,". You are visitor number",visitor_num,"</li>"].join(' ')

2.速度/内存的使用

创建多个字符串,然后将它们连接起来,将使用更多的内存,比一次创建单个字符串要慢。

我曾经写过一个javascript字符串格式化程序-

代码语言:javascript
复制
// simple string builder- usage:   stringFormat("Hello {0}","world"); 
// returns "Hello world"

function stringFormat() {
      var s = arguments[0];
      for (var i = 0; i < arguments.length - 1; i++) {
          var reg = new RegExp("\\{" + i + "\\}", "gm");
          s = s.replace(reg, arguments[i + 1]);
      }
      return s;
}
票数 13
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6088382

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档