Javascript 如何拆分字符串并重复字符?
我试图将数组=[A,B,C,D]转换为数组=[A,BB,CCC,dddddd]。如果比较数组,您会注意到第二个数组中的字母在每个位置都有额外的相同字母。下面是我的代码。我使用for循环是因为我想在for循环中使用增量。我甚至不知道map方法是否也能做到这一点,所以我选择了for循环。然而,当我检查时,它没有显示我想要的结果。我错过了什么 功能累积{ //你的代码 让accArray=s.toUpperCase.split; 对于let i=1;iJavascript 如何拆分字符串并重复字符?,javascript,arrays,string,Javascript,Arrays,String,我试图将数组=[A,B,C,D]转换为数组=[A,BB,CCC,dddddd]。如果比较数组,您会注意到第二个数组中的字母在每个位置都有额外的相同字母。下面是我的代码。我使用for循环是因为我想在for循环中使用增量。我甚至不知道map方法是否也能做到这一点,所以我选择了for循环。然而,当我检查时,它没有显示我想要的结果。我错过了什么 功能累积{ //你的代码 让accArray=s.toUpperCase.split; 对于let i=1;i{ arr.push.repeatedindex
accumabcd如果您的输入已经是类似于
arr = ['a', 'b', 'c', 'd']
然后你可以用
arr.map((item, idx) => item.repeat(idx+1))
如果你有像绳子一样的
str = 'abcd'
然后您可以使用:
str.split('').map((item, idx) => item.repeat(idx+1);
字符串和所有原语都是不可变的。对于重复和替换等特定方法中的字符串,返回一个带有修改值的新字符串,原始字符串保持不变。@VLAZ哦,对了!我完全忘记了repeat返回一个新字符串。谢谢你的提醒@弗拉兹,你为什么把我的问题标记为重复的?我看了另一个问题,它没有回答我的问题。另一个问题是关于substr方法,而我问的是repeat方法和map方法。String是不可变的。任何更改字符串的方法实际上都会返回一个新字符串-repeat、replace、substr、slice、toUpperCase等等。所有这些都不会更改调用它们的字符串-当答案相同时,不需要为每个方法编写相同的答案-您必须调用该方法并在某个位置赋值。@VLAZ true,字符串是不可变的。然而,另一个问题主要是讨论解决方案和使用substr、slice等。事实上,另一个问题是一个广泛的问题。你提到的那句话只是最好的解决办法中的一段。我的问题是具体的,并缩小到地图和重复的方法。这就是与另一个问题不同的地方。我发现马蒙的答案更好,原因是,这个答案利用了现有的变量,而不是创建一个新的。@KrishnaPrashatt我遵循规则,除非有必要,否则不变异我的变量,因此,我使用了一个不同的变量。显然,在传递上述代码之前,您可以对字符串使用大写或小写。
str.split('').map((item, idx) => item.repeat(idx+1);