Javascript 如何实现此功能,使输入到文本框中的一个单词反转到另一个文本框中?
我对Javascript 如何实现此功能,使输入到文本框中的一个单词反转到另一个文本框中?,javascript,string,textbox,reverse,palindrome,Javascript,String,Textbox,Reverse,Palindrome,我对javascript相当陌生,需要知道如何在textbox中提取一个字符串,按下一个按钮,将该字符串反转并放入另一个textbox?我正在做一个回文活动,检查一个单词是否是回文,然后将其反转。这是我的密码 <html> <script type="text/javascript" language="javascript"> function checkPalindrome() { var revStr = ""; var st
javascript
相当陌生,需要知道如何在textbox
中提取一个字符串,按下一个按钮,将该字符串反转并放入另一个textbox
?我正在做一个回文
活动,检查一个单词是否是回文,然后将其反转。这是我的密码
<html>
<script type="text/javascript" language="javascript">
function checkPalindrome() {
var revStr = "";
var str = document.info.string.value;
var i = str.length;
for (var j = i; j >= 0; j--) {
revStr = revStr + str.charAt(j);
}
if (str == revStr) {
window.alert(str + " is Palindrome");
} else {
window.alert(str + " is not a Palindrome");
}
}
function reverseString(parsedString) {
var str = "";
for (i = parsedString.length - 1; i >= 0; i--) {
str += parsedString.substr(i, 1);
}
return str;
}
</script>
</head>
<body bgcolor="#00CC33">
<center>
<h1><font color="#FF0099" face="Geneva, Arial, Helvetica, sans-serif">Palindrome Check</font></h1>
<form name="info">
Enter a Word:
<input type="text" name="string" value="" />
<br />
<input type="submit" value="Submit" onClick="checkPalindrome(); reverseString();" />
</form>
</center>
</body>
</html>
函数checkPalindrome(){
var revStr=“”;
var str=document.info.string.value;
var i=str.length;
对于(var j=i;j>=0;j--){
revStr=revStr+str.charAt(j);
}
如果(str==revStr){
警告(str+“是回文”);
}否则{
警告(str+“不是回文”);
}
}
函数反向限制(parsedString){
var str=“”;
对于(i=parsedString.length-1;i>=0;i--){
str+=parsedString.substr(i,1);
}
返回str;
}
回文检查
输入一个单词:
试试下面的方法-应该可以
我假设您只想在字符串是回文的情况下反转字符串。所以下面的代码将首先检查您的字符串是否是回文,如果是回文,那么它将反转该字符串
<html>
<script type="text/javascript" language="javascript">
function checkPalindrome() {
alert(document.getElementById('str'));
var str=document.getElementById('str').value;
var len=str.length
for (i=0; i<Math.floor(len/2);i++)
{
if(str[i]!==str[len-i-1])
{
return false;
}
else
{
reverseString(str)
}
}
}
function reverseString(parsedString) {
var new_reverse='';
var len=parsedString.length
for (i=0; i<len;i++)
{
new_reverse+=parsedString[len-i-1];
}
document.getElementById('revstring').value=new_reverse
}
</script>
</head>
<body bgcolor="#00CC33">
<center>
<h1><font color="#FF0099" face="Geneva, Arial, Helvetica, sans-serif">Palindrome Check</font></h1>
<form name="info">
Enter a Word:
<input type="text" name="string" id="str" />
<br/>
Your Reversed String is :
<input type="text" id="revstring"/>
</br>
<input type="submit" value="Submit" onClick="checkPalindrome();" />
</form>
</center>
</body>
</html>
函数checkPalindrome(){
警报(document.getElementById('str');
var str=document.getElementById('str').value;
var len=str.length
对于(i=0;i您可以使用for循环进行反转,但有一种更简单的方法
使用string.split(“”)
将字符串转换为字符数组,然后使用arrayarray.reverse()的反向方法
要比较反转字符串和未反转字符串,还需要将普通字符串转换为数组。然后需要使用toString()
将两者转换回数组。
这将创建以逗号分隔的字母的单词,但这可以用于比较
请查看下面和此处的代码
window.checkPalindrome=function(){
var str=document.info.string.value,
strTest=str.split(“”),//创建一个字符数组
revTest=str.split(“”).reverse();//创建字符数组和反向数组
log(strTest.toString(),revTest.toString());
if(strTest.toString()==revTest.toString()){//转换为字符串进行比较
警惕(str+'是回文!');
}否则{
警告(str+'不是回文!');
}
返回false;
};
回文检查
输入一个单词:
我很困惑。当您检查字符串是否为回文时,您是否已经反转了字符串?回文不意味着反转的字符串与用户输入的字符串相同吗?在这种情况下,为什么需要重新反转?请详细说明这是如何或为什么解决了他的问题
var array = document.getElementById('str').value.split(""),
newStr = array.reverse().toString().replace(/,/g,""),
output = newStr + " is not a palindrome";
alert( (str != newStr ? output : output.replace("not ","")));