如何在javascript中反转字符串?
我试图通过VisualStudio2013中的.html文件学习JavaScript 我知道有更简单的方法在JavaScript中反转字符串,但我的主要目标是理解html和JavaScript之间的交互,以提供这样的解决方案 此外,IDE必须是Visual Studio,因为最终我希望使用.aspx文件编写相同的逻辑 因此,对于我最初的学习尝试,我尝试实现以下逻辑:如何在javascript中反转字符串?,javascript,function,visual-studio-2013,visual-studio-debugging,onsubmit,Javascript,Function,Visual Studio 2013,Visual Studio Debugging,Onsubmit,我试图通过VisualStudio2013中的.html文件学习JavaScript 我知道有更简单的方法在JavaScript中反转字符串,但我的主要目标是理解html和JavaScript之间的交互,以提供这样的解决方案 此外,IDE必须是Visual Studio,因为最终我希望使用.aspx文件编写相同的逻辑 因此,对于我最初的学习尝试,我尝试实现以下逻辑: 从表单的输入标记获取字符串 提交表单,导致脚本submit()运行 脚本反转字符串,然后 在同一输入标记中显示反向字符串,该标记
- 从表单的输入标记获取字符串
- 提交表单,导致脚本submit()运行
- 脚本反转字符串,然后
- 在同一输入标记中显示反向字符串,该标记现在已禁用
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
<head>
<script type="text/javascript">
function reverseString() {
var s = document.getElementById('reverseString').value;
var reversed;
for (var i = s.length - 1; i >= 0; i--) {
reversed += s[i];
}
document.getElementById('reverseString').disabled = true;
document.getElementById('reverseString').value = reversed;
}
function submit(form) {
reverseString();
}
</script>
<title>Play with Code</title>
</head>
<body>
<form name="myform" onsubmit="submit();">
Reverse String: <input type="text" id="reverseString"/><br/>
<input type="submit" value="Submit"/>
</form>
</body>
</html>
函数反向限制(){
var s=document.getElementById('reverseString').value;
var反转;
对于(var i=s.length-1;i>=0;i--){
反向+=s[i];
}
document.getElementById('reverseString').disabled=true;
document.getElementById('reverseString')。value=reversed;
}
功能提交(表格){
反向限制();
}
玩代码
反向字符串:
它不起作用,我真的不知道如何解决它
我尝试按照这些链接提供的说明进行调试,但未成功:
请帮助我修复这段代码,如果可能的话,请建议或指导我如何调试这段代码
谢谢。这里有一个带注释的工作代码,可以解释你做错了什么:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
<head>
<title>Play with Code</title>
</head>
<body>
<form name="myform" id="form">
Reverse String: <input type="text" id="reverseString"/><br/>
<input type="submit" value="Submit"/>
</form>
<script>
function reverseString() {
var s = document.getElementById('reverseString').value;
// reverse should initialized as a empty String
// to prevent adding char to "undefined" string
var reversed = '';
for (var i = s.length - 1; i >= 0; i--) {
reversed += s[i];
}
document.getElementById('reverseString').disabled = true;
document.getElementById('reverseString').value = reversed;
}
function submit(ev) {
// preventDefault prevent the form to do his automatic
// behavior which submit the form with a new HTTP request
ev.preventDefault();
reverseString();
}
// Attach the event to the form
document.getElementById('form').addEventListener('submit', submit);
</script>
</body>
</html>
玩代码
反向字符串:
函数反向限制(){
var s=document.getElementById('reverseString').value;
//反向应初始化为空字符串
//防止向“未定义”字符串添加字符
var反向=“”;
对于(var i=s.length-1;i>=0;i--){
反向+=s[i];
}
document.getElementById('reverseString').disabled=true;
document.getElementById('reverseString')。value=reversed;
}
功能提交(ev){
//防止默认值阻止窗体执行其自动
//使用新HTTP请求提交表单的行为
ev.preventDefault();
反向限制();
}
//将事件附加到表单
document.getElementById('form')。addEventListener('submit',submit');
//HTML
反向字符串:
//剧本
函数funcreverse(){
var s=document.getElementById('reverseString').value;
var反向=“”;
对于(var i=s.length-1;i>=0;i--){
反向+=s[i];
}
document.getElementById('reverseString').disabled=true;
document.getElementById('reverseString')。value=reversed;
};
reverse=s.split(“”).reverse().join(“”)
Tryvar reversed=“”代码>有些信息不会在一张便条中向每个人提出两个(或更多)问题:小心天真地在JavaScript中反转字符串,因为字符编码会咬到你。请阅读有关该主题的最佳SO答案之一:
//HTML
Reverse String: <input type="text" id="reverseString"/><br/>
<input type="button" value="Submit" onClick="funcreverse()"/>
//Script
function funcreverse () {
var s = document.getElementById('reverseString').value;
var reversed = '';
for (var i = s.length - 1; i >= 0; i--) {
reversed += s[i];
}
document.getElementById('reverseString').disabled = true;
document.getElementById('reverseString').value = reversed;
};