这是不使用reverse()方法来反转字符串的JavaScript程序
function reverseString(str){ let reversed= ''; for(i=str.length-1; i>0; i--){ reversed += str[i]; } return reversed; } const originalString = "Hello world"; const reveresedString = reverseString(originalString); console.log("original String", originalString); console.log("reversed string", reveresedString );
解释
该程序避免使用reverse()并实现了所需的功能。
详细:它是如何工作的。
- str[i]: 访问字符串 str 中索引 i 处的字符
- 例如,如果 str == “hello “: ** str[4]** 是 ‘o’ ** str[3]** 是 ‘l’
- reversed = str[i]:这是reversed = returned str[i]的简写
- 它采用当前值或反转,将 str[i] 附加到它,然后 使用这个新值反转更新。
*迭代过程:*
让我们把它分解为 str = “abc”
初始状态:
- 反转=“”(空字符串);
- 循环从 i=2(字符串的最后一个字符)开始
迭代 1 (i=2);
- 反转 =str[2] -> 反转 = “” “c” -> 反转 = “c” 迭代 2 (i=1);
- 反转 =str[1] -> 反转 = “c” “b” -> 反转 = “cb” 迭代 3 (i=0);
- 反转 =str[0] -> 反转 = “cb” “a” -> 反转 = “cba”
最终输出:
- 反转=“cba”
为什么使用 =?
= 运算符简化了增量构建反转字符串的过程,无需数组或额外的逻辑。 javascript 的高效目的
立即学习“Java免费学习笔记(深入)”;