freeCodeCamp/guide/chinese/certifications/javascript-algorithms-and-d.../basic-algorithm-scripting/repeat-a-string-repeat-a-st.../index.md

5.5 KiB
Raw Blame History

title localeTitle
Repeat a String Repeat a String 重复一个字符串重复字符串

:triangular_flag_on_post:如果卡住,请记得使用**Read-Search-Ask** 。尝试配对程序:busts_in_silhouette:并编写自己的代码:pencil:

:checkered_flag:问题说明:

该程序非常简单,我们必须采用一个变量并返回该变量重复一定次数。无需添加空格或任何内容,只需将其重复一个单独的字符串即可。

相关链接

:speech_balloon:提示1

您无法编辑字符串,您需要创建一个变量来存储新字符串。

现在尝试解决问题

:speech_balloon:提示2

创建一个循环,根据需要多次重复代码。

现在尝试解决问题

:speech_balloon:提示3

使创建的变量存储当前值并将单词附加到它。

现在尝试解决问题

扰流警报!

警告牌

提前解决!

:beginner:基本代码解决方案

function repeatStringNumTimes(str, num) { 
  var accumulatedStr = ''; 
 
  while (num > 0) { 
    accumulatedStr += str; 
    num--; 
  } 
 
  return accumulatedStr; 
 } 

:rocket: 运行代码

代码说明:

  • 创建一个空字符串变量来存储重复的单词。
  • 根据num使用while循环或for循环根据需要多次重复代码
  • 然后我们只需要将字符串添加到在第一步中创建的变量,并根据设置循环的方式增加或减少num
  • 在循环结束时,返回重复单词的变量。

相关链接

:sunflower:中级代码解决方案:

function repeatStringNumTimes(str, num) { 
  if(num < 0) 
    return ""; 
  if(num === 1) 
    return str; 
  else 
    return str + repeatStringNumTimes(str, num - 1); 
 } 

:rocket: 运行代码

代码说明:

  • 此解决方案使用递归。
  • 我们检查num是否为负数如果为true则返回空字符串。
  • 然后我们检查它是否等于1在这种情况下我们返回字符串本身。
  • 如果没有,我们将字符串添加到我们函数的调用中, num减少1这将添加另一个str和另一个..直到最终num为1.并返回整个过程。

相关链接

:rotating_light:高级代码解决方案

function repeatStringNumTimes(str, num) { 
  return num > 0 ? str.repeat(num) : ''; 
 } 
 
 repeatStringNumTimes("abc", 3); 

:rocket: 运行代码

代码说明:

  • 该解决方案采用声明式方法。
  • 它类似于第三种解决方案,除了它使用if语句的三元运算符形式。

相关链接

:clipboard:捐款说明:

  • :warning: 请勿添加与任何现有解决方案类似的解决方案。如果您认为它**相似但更好** ,那么尝试合并(或替换)现有的类似解决方案。
  • 添加解决方案的说明。
  • 将解决方案分为以下类别之一 - 基本 中级高级:traffic_light:
  • 如果您添加了任何**相关的主要内容,**请仅添加您的用户名。 :warning: 不要 删除任何现有的用户名

看到:point_right: Wiki Challenge Solution Template供参考。