【问题标题】:JavaScript String Format Not Working [duplicate]JavaScript字符串格式不起作用[重复]
【发布时间】:2015-06-30 05:10:33
【问题描述】:

我正在尝试创建一个字符串格式,我有大约 8 个参数。 我想做如下所示的事情。

string.format("www.website.com?Id={0}&Name={1}", 2,Emma)

但是我在 JavaScript 中尝试过,但它不起作用。

有人可以帮忙吗?

提前致谢!

【问题讨论】:

  • 因为它不是一个标准的 JavaScript 函数。一个人不能编造东西并期望它起作用。不要责怪 JavaScript(“不工作”),而是从搜索如何执行缩进任务和/或“不工作”错误(在控制台中)的含义开始。

标签: javascript string format


【解决方案1】:

Javascript 字符串对象有没有 format() 方法。

但是,您可以使用恐惧噬菌体提供的代码轻松地自己实现它:JavaScript equivalent to printf/string.format

【讨论】:

    【解决方案2】:

    支持String.prototype.format():

    String.prototype.format = function(){
      var args = arguments;
      return this.replace(/\{(\d+)\}/g, function(a, num){
        return args[num] || a
      })
    }
    
    var str = "www.website.com?Id={0}&Name={1}".format(2, "Emma");
    alert(str)

    如果您处于支持ECMAScript ES6's 的环境中,则可以使用Template Strings

    var variables = [2, "Emma"];
    var str = `www.website.com?Id=${variables[0]}&Name=${variables[1]}`;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-06-25
      • 2017-06-18
      • 1970-01-01
      • 1970-01-01
      • 2023-04-07
      • 2017-04-17
      • 2023-03-03
      相关资源
      最近更新 更多