我有一小段HTML和JavaScript代码。我想写一个反转输入字符串的函数。例如,输入= hello
,输出= olleh
。
这是我到目前为止所做的:
function go() {
var input = document.getElementById("input").innerHTML;
var output = document.getElementById("input");
var result = "";
for (var i = input.length; i >= 0; i--) {
result += input[i];
}
output.innerHTML = result;
}
onload = go;
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="question4.js"></script>
</head>
<body>
<div id="input">This text here</div>
<div id="output"></div>
</body>
</html>
一切正常,但输出结果前面有undefined
。它看起来像这样:
undefinedereh txet sihT
如何让undefined
消失?
答案 0 :(得分:1)
将var i = input.length
更改为var i = input.length-1
因为您第一次循环播放时会尝试获取input[i]
(其中i
是input
的长度数组)。
如果数组中有10个项目,i
将为10,但元素10的正确索引为9。
答案 1 :(得分:0)
从input.length-1
开始循环