反转字符串以在JavaScript中查找回文
我有两条线。第一个是普通字符串,第二个我希望是像第一个一样的反向字符串,但在控制台中,我没有得到像第一个一样用逗号列出的外观。我怎样才能解决这个问题 正常字符串- 尊敬的字符串-反转字符串以在JavaScript中查找回文,javascript,string,reverse,Javascript,String,Reverse,我有两条线。第一个是普通字符串,第二个我希望是像第一个一样的反向字符串,但在控制台中,我没有得到像第一个一样用逗号列出的外观。我怎样才能解决这个问题 正常字符串- 尊敬的字符串- window.onload=function(){ inputBox=document.getElementById(“myText”); btn=document.getElementById('sub'); btn.addEventListener(“单击”),函数(事件){ event.preventDefaul
window.onload=function(){
inputBox=document.getElementById(“myText”);
btn=document.getElementById('sub');
btn.addEventListener(“单击”),函数(事件){
event.preventDefault();
findPalindromes(inputBox.value);
});
str=inputBox.value;
函数findPalindromes(str){
var words=str.split(“”);
for(var i=0;i=0;i--){
新闻字符串+=单词[i];
}
console.log(新闻字符串);
}
}
不需要循环的第一个。不需要将空格字符“
连接到数组元素,其中变量赋值i
var i = 0;
和条件
i < words.length - 1;
循环的第一个不是必需的。不需要将空格字符“
连接到数组元素,其中变量赋值i
var i = 0;
和条件
i < words.length - 1;
如果您真的只想知道字符串是否是回文,可以做如下简单的事情:
function isPalindrome(str) {
return str.toLowerCase() === str.toLowerCase().split('').reverse().join('');
}
如果您真的只想知道字符串是否是回文,可以做如下简单的事情:
function isPalindrome(str) {
return str.toLowerCase() === str.toLowerCase().split('').reverse().join('');
}
在“普通”字符串示例中,您正在将单词
打印到控制台。让我们先看看什么是words
:var words=str.split(“”)代码>
函数返回一个字符串数组。因此,您的“普通”字符串实际上是一个字符串数组(控制台输出中的括号[]
和逗号分隔的字符串表明了这一点)
在第二个示例中,您正在记录newString
。让我们看看它的来源:var newString=“”代码>
newString
是一个字符串。如果您希望它是一个字符串数组,如words
,您可以使用var newString=[]声明它代码>。数组不支持+=
所以newString+=words[i]
将变成newString.push(单词[i])代码>
上面解释了如何让newString
表现得像words
,你写的代码不是在寻找回文单词,而是一个回文句子:“Bob is Bob”不是回文(反过来是“Bob si Bob”),但它可能是一个回文句子(如果存在这样的东西)。在你的“normal”中例如,您正在向控制台打印单词
。让我们先看看什么是words
:var words=str.split(“”)代码>
函数返回一个字符串数组。因此,您的“普通”字符串实际上是一个字符串数组(控制台输出中的括号[]
和逗号分隔的字符串表明了这一点)
在第二个示例中,您正在记录newString
。让我们看看它的来源:var newString=“”代码>
newString
是一个字符串。如果您希望它是一个字符串数组,如words
,您可以使用var newString=[]声明它代码>。数组不支持+=
所以newString+=words[i]
将变成newString.push(单词[i])代码>
上面解释了如何让newString
表现得像words
,您编写的代码不是寻找回文单词,而是寻找回文句子:“Bob is Bob”不是回文(反过来是“Bob si Bob”),但它可能是回文句子(如果存在这样的东西)。感谢大家,我为这个问题写了这个解决方案。我希望这是正确的答案
window.onload = function(){
inputBox = document.getElementById("myText");
btn = document.getElementById('sub');
btn.addEventListener("click",function(event){
event.preventDefault();
findPalindromes(inputBox.value);
});
str = inputBox.value;
function findPalindromes(str) {
var words = str.split(" "),
newString = [];
for (var i = 0; i < words.length - 1; i++) {
if ((words[i] === words[i].split('').reverse().join('')) === true) {
newString.push(words[i]);
}
}
console.log(newString);
}
}
window.onload=function(){
inputBox=document.getElementById(“myText”);
btn=document.getElementById('sub');
btn.addEventListener(“单击”),函数(事件){
event.preventDefault();
findPalindromes(inputBox.value);
});
str=inputBox.value;
函数findPalindromes(str){
var words=str.split(“”),
新闻字符串=[];
for(var i=0;i
感谢大家,我为这个问题编写了这个解决方案。我希望这是正确的答案
window.onload = function(){
inputBox = document.getElementById("myText");
btn = document.getElementById('sub');
btn.addEventListener("click",function(event){
event.preventDefault();
findPalindromes(inputBox.value);
});
str = inputBox.value;
function findPalindromes(str) {
var words = str.split(" "),
newString = [];
for (var i = 0; i < words.length - 1; i++) {
if ((words[i] === words[i].split('').reverse().join('')) === true) {
newString.push(words[i]);
}
}
console.log(newString);
}
}
window.onload=function(){
inputBox=document.getElementById(“myText”);
btn=document.getElementById('sub');
btn.addEventListener(“单击”),函数(事件){
event.preventDefault();
findPalindromes(inputBox.value);
});
str=inputBox.value;
函数findPalindromes(str){
var words=str.split(“”),
新闻字符串=[];
for(var i=0;i
console.log(words.reverse())“普通”字符串实际上是一个字符串数组。如果想要相同的输出,则必须为反转的字符串创建一个数组```words
是一个数组newString
是一个字符串,谢谢大家!:)我必须听Francisco C并尝试他的方法。console.log(words.reverse())“普通”字符串实际上是一个字符串数组。如果想要相同的输出,则必须为反转的字符串创建一个数组```words
是一个数组newString
是一个字符串,谢谢大家!:)我必须听弗朗西斯科C的话,试着用他的方法。是的,一般来说我不需要拳圈,但我会用它