We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
例如:给你一个字符串“Hello Word!”,让你通过JavaScript的方法,将其变成"!droW olleH"。
把提供的字符串转化成一个数组,然后把数组反向显示,最终显示的依旧是一个字符串。
让一个字符串反向显示可以用以下三种方法配合:
例如:
function reverseString(str){ // 第一步,使用split()方法,返回一个新数组 var splitString = str.split(""); // 第二步,使用reverse()方法创建一个反转的新数组 var reverseArray = splitString.reverse(); // 第三步,使用join()方法将数组的每个元素连接在一起,组合成一个新字符串 var joinArray = reverseArray.join(""); // 第四步,返回反转后的新字符串 console.log( joinArray ); return joinArray; } reverseString( 'hello word' ); // "dlrow olleh"
将上面的方法简化一下,就可以写成:
function reverseString(str){ return str.split("").reverse().join(""); } reverseString( 'hello word' );
使用一个for或者while循环把原字符做一个递减遍历,然后将遍历的字符串重新合并成一个新字符串:
for
while
function reverseString1(str){ var newString = ""; for( var i = str.length - 1 ; i >= 0 ; i-- ){ newString += str[i]; } console.log( newString ); return newString; } reverseString1( 'hello word' ); // 使用while循环 function reverseString2(str){ var newString = ""; var i = str.length-1; while( i>0 ){ newString += str.substring( i-1,i ); i--; } return newString; } reverseString2( 'hello word' );
substring() 返回字符串两个索引之间的字串。
substring()
先来回顾一下String.prototype.substr()和String.prototype.charAt()方法: substr()方法返回字符串从指定位置开始到指定长度的子字符串。 chartAt()方法返回字符串指定位置的字符。 使用递归来进行字符串反转:
String.prototype.substr()
String.prototype.charAt()
substr()
chartAt()
function reverseString3(str){ if( str === "" ) return "" else { console.log( reverseString3( str.substr(1) ) + str.charAt(0) ); // 这里打印出来会有神奇的事情发生 return reverseString3( str.substr(1) ) + str.charAt(0); } } reverseString3( "hello word" );
把上面的方法简写一下,为:
function reverseString4(str) { return (str === '') ? '' : reverseString(str.substr(1)) + str.charAt(0); } reverseString4("hello word");
还有更多的解决方法,可参考JavaScript算法练习:字符串反转
The text was updated successfully, but these errors were encountered:
No branches or pull requests
js反转字符串
例如:给你一个字符串“Hello Word!”,让你通过JavaScript的方法,将其变成"!droW olleH"。
解决思路
把提供的字符串转化成一个数组,然后把数组反向显示,最终显示的依旧是一个字符串。
解决方法一:使用内置函数
让一个字符串反向显示可以用以下三种方法配合:
例如:
将上面的方法简化一下,就可以写成:
解决方法二:使用一个循环遍历将字符串反转
使用一个
for
或者while
循环把原字符做一个递减遍历,然后将遍历的字符串重新合并成一个新字符串:解决方法三:使用一个递归将字符串反转
先来回顾一下
String.prototype.substr()
和String.prototype.charAt()
方法:substr()
方法返回字符串从指定位置开始到指定长度的子字符串。chartAt()
方法返回字符串指定位置的字符。使用递归来进行字符串反转:
把上面的方法简写一下,为:
The text was updated successfully, but these errors were encountered: