循环中的JavaScript-If语句出现问题 函数rot13(str){ var=[]; 对于(变量i=0;i64&&str.charCodeAt[i]64&&str.charCodeAt[i]64&&str.charCodeAt[i]

循环中的JavaScript-If语句出现问题 函数rot13(str){ var=[]; 对于(变量i=0;i64&&str.charCodeAt[i]64&&str.charCodeAt[i]64&&str.charCodeAt[i],javascript,for-loop,if-statement,Javascript,For Loop,If Statement,试图在for循环中使用if-else语句,但else语句存在一些问题(获取“语法错误:意外标记else”)。现在的主要目标是在传递其他字符(如空格、感叹号等)的同时,尝试操作字符串和字母字符。当然,有一种更简单的方法可以做到这一点,但实际上只是想知道在循环中编写if-else语句的问题是什么,我哪里出了问题。感谢您的帮助如果,则在您的之后有两个代码正文: function rot13(str) { var yahoo = []; for (var i = 0; i < str.len

试图在for循环中使用if-else语句,但else语句存在一些问题(获取“语法错误:意外标记else”)。现在的主要目标是在传递其他字符(如空格、感叹号等)的同时,尝试操作字符串和字母字符。当然,有一种更简单的方法可以做到这一点,但实际上只是想知道在循环中编写if-else语句的问题是什么,我哪里出了问题。感谢您的帮助

如果,则在您的
之后有两个代码正文:

function rot13(str) { 

var yahoo = [];

for (var i = 0; i < str.length; i++) {
    if (str.charCodeAt(i) > 64 && str.charCodeAt[i] < 91){continue;}{
        var cnet = str.charCodeAt(i);
        yahoo.push(cnet);
    } else {
      var j = str.charCodeAt(i);
        yahoo.push(j);
    }
}

var ugh = yahoo.toString();
return ugh;
}

rot13("SERR PBQR PNZC");
if(str.charCodeAt(i)>64&&str.charCodeAt[i]<91)
{continue;}//if的实际主体
{//只是一个随机的代码块
var cnet=str.charCodeAt(i);
雅虎推送(cnet);
}

第二个代码块根本不是
if
的一部分,因为
if
只会得到一个代码块。这就是为什么
else
是“意外的”。如果
之后有两个代码体:

function rot13(str) { 

var yahoo = [];

for (var i = 0; i < str.length; i++) {
    if (str.charCodeAt(i) > 64 && str.charCodeAt[i] < 91){continue;}{
        var cnet = str.charCodeAt(i);
        yahoo.push(cnet);
    } else {
      var j = str.charCodeAt(i);
        yahoo.push(j);
    }
}

var ugh = yahoo.toString();
return ugh;
}

rot13("SERR PBQR PNZC");
if(str.charCodeAt(i)>64&&str.charCodeAt[i]<91)
{continue;}//if的实际主体
{//只是一个随机的代码块
var cnet=str.charCodeAt(i);
雅虎推送(cnet);
}

第二个代码块根本不是
if
的一部分,因为
if
只会得到一个代码块。这就是为什么
else
是“意外的”。

您试图在完成if语句后调用语句。您的
如果
导致
继续else
之前执行其他操作。尝试重构
继续。它与for循环无关:)

在完成if语句之后,您正试图调用一条语句。您的
如果
导致
继续else
之前执行其他操作。尝试重构
继续。它与for循环没有任何关系:)

试图在for循环中使用if-else语句,但else语句存在一些问题(获取“语法错误:意外标记else”)

但我真的只是想知道在循环中编写if-else语句的问题是什么,我哪里出错了

你不写一个
if..else
语句,而是写一个
if
语句和一个代码块,在那里你试图添加你的
else
语句;这句话在这里没有意义

您的代码如下所示:

if (str.charCodeAt(i) > 64 && str.charCodeAt[i] < 91)
  {continue;}   // actual body of the if

  { // just a random block of code
    var cnet = str.charCodeAt(i);
    yahoo.push(cnet);
  }
试图在for循环中使用if-else语句,但else语句存在一些问题(获取“语法错误:意外标记else”)

但我真的只是想知道在循环中编写if-else语句的问题是什么,我哪里出错了

你不写一个
if..else
语句,而是写一个
if
语句和一个代码块,在那里你试图添加你的
else
语句;这句话在这里没有意义

您的代码如下所示:

if (str.charCodeAt(i) > 64 && str.charCodeAt[i] < 91)
  {continue;}   // actual body of the if

  { // just a random block of code
    var cnet = str.charCodeAt(i);
    yahoo.push(cnet);
  }

如果条件{continue;}代码返回一个空字符串,不带中断或错误,那么在该条件之后将有额外的块continue@Bobbygllh代码没有做任何事情,因为它有语法错误;它根本不会运行。我知道,应该说“当我删除else语句时返回一个空字符串”这是在那里继续做什么?如果条件{continue;}代码返回一个空字符串而没有中断或错误,那么您将有额外的块continue@Bobbygllh代码没有做任何事情,因为它有语法错误;它根本不会运行。我知道,应该说“当我删除else语句时返回一个空字符串”,这完全有道理。我之所以选择continue,是因为它返回了一个空字符串,而没有返回它(在删除else语句以便它可以运行之后),这是完全有意义的。我之所以选择continue,是因为它返回了一个没有它的空字符串(在删除else语句以便它可以运行之后)