function reverse_string() {
var text = document.getElementById("string_reverse").value;
var split_string = text.split(" ");
var output = "";
var output2 = "";
function isEven(split_string) {
if (split_string.length % 2 == 0)
return output;
else
return output2;
}
for (var i = 0; i < split_string.length; i += 2) {
output += " " + split_string[i + 1] + " " + split_string[i];
document.getElementById("reverse").innerHTML = output;
}
output2 += " " + output + " " + split_string[split_string.length - 1];
document.getElementById("reverse").innerHTML = output2;
}
<div class="row">
<div class="col-sm-3">Input Any string :
<input type="text" style="width:250px" name="STRAT_TIME" id="string_reverse" placeholder="ex: w1 w2 w3 w4 w5 w6 w7 w8">
</div>
<div class="col-sm-3">
<INPUT NAME="check" TYPE=Button VALUE="string reverse" onClick="reverse_string(); return false;">
</div>
</div>
<div id="reverse" class="row">
</div>
显示的输出:undefined + string
。
我该如何删除?
我喜欢它,如果输入是1 2 3 4那么o / t是2 1 4 3
另一个条件是如果字符串是奇数
ex 1 2 3 4 5然后需要2 1 4 3 5
答案 0 :(得分:0)
试试这个
for (var i = split_string.length-1; i >= 0; i --) {
output += " " + split_string[i ] + " ";
}
document.getElementById("reverse").innerHTML = output;
答案 1 :(得分:0)
这是因为,您使用" "
并使用split_string[i + 1]
进行拆分。
如果我进入&#34; Hello World! FOO&#34;
split_string就像
0: Hello
1: World!
2: Foo.
第一次迭代将正常工作。然后你增加i+=2
,现在i
为2
,split_string[i + 1]
为split_string[3]
,即未定义。
如果您未使用任何spaces
输入值,也会发生同样的情况。
您可以尝试这样的事情:
function reverse_string() {
var text = document.getElementById("string_reverse").value;
var split_string = text.split(" ");
var _temp = [];
var len = split_string.length;
console.log(len, split_string)
for(var i=0; i<len/2; i++){
_temp.push(split_string[(i*2) + 1]);
_temp.push(split_string[(i*2)]);
}
console.log(_temp);
document.getElementById("reverse").innerHTML = _temp.join(" ");
}
&#13;
<div class="row">
<div class="col-sm-3">Input Any string :
<input type="text" style="width:250px" name="STRAT_TIME" id="string_reverse" placeholder="ex: w1 w2 w3 w4 w5 w6 w7 w8">
</div>
<div class="col-sm-3">
<INPUT NAME="check" TYPE=Button VALUE="string reverse" onClick="reverse_string(); return false;">
</div>
</div>
<div id="reverse" class="row">
</div>
&#13;
答案 2 :(得分:0)
function reverse_string() {
var text = document.getElementById("string_reverse").value;
var split_string = text.split(" ");
var output = "";
var output2 = "";
function isEven(split_string) {
if (split_string.length % 2 == 0)
return output;
else
return output2;
}
for (var i = split_string.length-1; i >= 0; i --) {
output += " " + split_string[i ] + " ";
}
document.getElementById("reverse").innerHTML = output;
}
&#13;
<div class="row">
<div class="col-sm-3">Input Any string :
<input type="text" style="width:250px" name="STRAT_TIME" id="string_reverse" placeholder="ex: w1 w2 w3 w4 w5 w6 w7 w8">
</div>
<div class="col-sm-3">
<INPUT NAME="check" TYPE=Button VALUE="string reverse" onClick="reverse_string(); return false;">
</div>
</div>
<div id="reverse" class="row">
</div>
&#13;
答案 3 :(得分:0)