【问题标题】:Return multiple strings from function based on variable number根据变量号从函数返回多个字符串
【发布时间】:2021-02-10 11:17:02
【问题描述】:

我有一个字符串

var str = 'string'

我有一个乘数

var mult = 3

我要回stringstringstring

mult 会改变。基本上 mult 有点像幂,但这是一个字符串而不是数字。我需要返回多个字符串。我正在考虑循环其中 mult = 循环的次数,每个在概念上都会“推送”,但我不想要一个数组或类似 =+ 但不是数字的东西。我在想我可以将输出推送到数组的次数 = mult,然后加入数组 - 但我不知道在没有分隔符的情况下是否可以加入。我是 javascript 的新手,以下内容不起作用,但这是我的想法。在我运行 javascript 且没有库的地方也无法输入函数。

var loop = {
  var str = 'string'
  var arr = [];
  var mult = 3;
  var i = 0
  for (i = 0, mult-1, i++) {
    arr.push('string'[i]);
  }
}
var finalString = arr.join(''); // I don't know how to get it out of an object first before joining

不确定我想要的是荒谬还是完全有可能

【问题讨论】:

    标签: javascript arrays string loops


    【解决方案1】:

    你的意思是像下面这样,

    var str = 'string'
    var mult = 3
    var str2 = ''
    for(i = 0; i < mult; i++) {
        str2 += str
    }
    console.log(str2)

    【讨论】:

      【解决方案2】:

      var str = 'string'
      var mult = 3;
      var sol =""
      while(mult--) {
         sol +=str;
      }
      console.log(sol)

      使用可重用函数:

      const concatStr= (str, mult)=>{
        var sol =""
        while(mult--) {
       sol +=str;
        }
        console.log(sol)
      }
      
      concatStr("string",3)

      使用内置的Array.from 方法:

      var str = "string"
      var mult = 3
      var sol = Array.from({length: mult}, ()=> str).join("")
      console.log(sol)

      【讨论】:

        【解决方案3】:

        function concatString(str, mult) {
           var result = ''
           for(i = 0; i < mult; i++) {
              result = result.concat(str);
           }
            return result;
         }
        
        const value = concatString('string', 3);
        console.log(value);

        你也可以使用数组内置方法,

        const mult = 3, displayVal = 'str';
        Array(mult).fill(displayVal).join('');
        

        【讨论】:

          【解决方案4】:

          // the string object has a repeat method
          console.log('string'.repeat(3));

          【讨论】:

            猜你喜欢
            • 2012-02-26
            • 1970-01-01
            • 2012-04-30
            • 1970-01-01
            • 2013-04-14
            • 1970-01-01
            • 2016-03-04
            • 1970-01-01
            相关资源
            最近更新 更多