javascript版format函数,方便实现复杂字串连接

javascript版format函数,方便实现复杂字串连接
String.prototype.format = function () {
      var args = arguments;
      console.log('args: ', args);

      if (typeof args[0] === 'object') {
        var obj = args[0];
        console.log(obj);
        
        return this.replace(/\{([A-Za-z_]+)\}/g,
          function (m, i) {
            console.log(m, i);
            return obj[i];
          });
      } else {
        return this.replace(/\{(\d+)\}/g,
          function (m, i) {
            console.log(m, i);
            return args[i];
          });
      }
    }
    
var x = 'abc{a}, {b}'.format({a:1, b:2});
console.log(x)
console.log('this is {0} {1}, {2}'.format(10,22,33))
posted @ 2018-01-31 12:09  东子1573  阅读(144)  评论(0编辑  收藏  举报