在 JS 中反转字符串
Reverse a String in JS
我正在学习编码教程(我在这方面还很陌生),这个特别的练习让我绞尽脑汁。以下是参数:
反转提供的字符串。
您可能需要先将字符串转换为数组,然后才能反转它。您的结果必须是字符串。
这里是我得到的开始代码:
function reverseString(str) {
return str;
}
reverseString('hello');
expect(reverseString('hello')).to.be.a('String');
expect(reverseString('hello')).to.equal('olleh');expected 'hello' to equal 'olleh'
expect(reverseString('Howdy')).to.equal('ydwoH');expected 'Howdy' to equal 'ydwoH'
expect(reverseString('Greetings from Earth')).to.equal('htraE morf sgniteerG');expected 'Greetings from Earth' to equal 'htraE morf sgniteerG'
关于如何实现这一点有什么建议吗?
** 编辑:我知道我的问题是什么。教程站点的特殊 IDE 让人感到困惑。显然我打算实现所列目标之一(并非像我之前认为的那样在一个脚本中实现所有目标)。这是由 return str.split( '' ).reverse( ).join( '' );
完成的。 split 和 join 方法的参数起初也有点混乱。这个方法网上的教程大多都是以分词为例,所以没意识到从
" "
到 ""
将从反转单词到反转字母的过程改变。
一个字符串是一个字符数组,所以你可以在数组上使用reverse函数来反转它然后return它:
function reverseString(str) {
return str.split('').reverse().join('');
}
您可以在此处阅读更多内容:http://eddmann.com/posts/ten-ways-to-reverse-a-string-in-javascript/
function reverse(s) {
var o = '';
for (var i = s.length - 1; i >= 0; i--)
o += s[i];
return o;
}
var reversedStr = normalStr.split("").reverse().join("");
完成此操作的非常手动的方法
var j = 'abcdefgh';
var k = j.split('');
var reversedArr = []
for(var i = k.length; i >= 0; i--) {
reversedArr.push(k[i])
}
var reversedStr = reversedArr.join('')
console.log(reversedStr)
数组有一个名为 reverse( ) 的方法。本教程暗示使用它。
要将字符串转换为字符数组(实际上它们只是单个字符串),您可以使用方法 split( ) 以空字符串作为分隔符。
为了将数组转换回字符串,您可以再次使用方法 join( ),将空字符串作为参数。
使用这些概念,您将找到反转字符串的通用解决方案。
function reverseString(str) {
return str.split( '' ).reverse( ).join( '' );
}
我正在学习编码教程(我在这方面还很陌生),这个特别的练习让我绞尽脑汁。以下是参数:
反转提供的字符串。 您可能需要先将字符串转换为数组,然后才能反转它。您的结果必须是字符串。
这里是我得到的开始代码:
function reverseString(str) {
return str;
}
reverseString('hello');
expect(reverseString('hello')).to.be.a('String');
expect(reverseString('hello')).to.equal('olleh');expected 'hello' to equal 'olleh'
expect(reverseString('Howdy')).to.equal('ydwoH');expected 'Howdy' to equal 'ydwoH'
expect(reverseString('Greetings from Earth')).to.equal('htraE morf sgniteerG');expected 'Greetings from Earth' to equal 'htraE morf sgniteerG'
关于如何实现这一点有什么建议吗?
** 编辑:我知道我的问题是什么。教程站点的特殊 IDE 让人感到困惑。显然我打算实现所列目标之一(并非像我之前认为的那样在一个脚本中实现所有目标)。这是由 return str.split( '' ).reverse( ).join( '' );
完成的。 split 和 join 方法的参数起初也有点混乱。这个方法网上的教程大多都是以分词为例,所以没意识到从
" "
到 ""
将从反转单词到反转字母的过程改变。
一个字符串是一个字符数组,所以你可以在数组上使用reverse函数来反转它然后return它:
function reverseString(str) {
return str.split('').reverse().join('');
}
您可以在此处阅读更多内容:http://eddmann.com/posts/ten-ways-to-reverse-a-string-in-javascript/
function reverse(s) {
var o = '';
for (var i = s.length - 1; i >= 0; i--)
o += s[i];
return o;
}
var reversedStr = normalStr.split("").reverse().join("");
完成此操作的非常手动的方法
var j = 'abcdefgh';
var k = j.split('');
var reversedArr = []
for(var i = k.length; i >= 0; i--) {
reversedArr.push(k[i])
}
var reversedStr = reversedArr.join('')
console.log(reversedStr)
数组有一个名为 reverse( ) 的方法。本教程暗示使用它。
要将字符串转换为字符数组(实际上它们只是单个字符串),您可以使用方法 split( ) 以空字符串作为分隔符。
为了将数组转换回字符串,您可以再次使用方法 join( ),将空字符串作为参数。
使用这些概念,您将找到反转字符串的通用解决方案。
function reverseString(str) {
return str.split( '' ).reverse( ).join( '' );
}