gpt4 book ai didi

Javascript检查字符是否为元音

转载 作者:行者123 更新时间:2023-12-02 05:28:19 24 4
gpt4 key购买 nike

我在这里查看了很多与我相关的问题,但它们都使用了与我必须使用的方法不同的方法。我知道这是一个非常冗长的方法来找出何时有更简单的方法,但我只是按照说明进行操作。

为什么下面的代码不起作用?该函数检查它是否是元音。
然后检查输入的长度是否为 1。如果为 1,则调用该函数。如果大于 1,则请求另一个输入,直到长度为 1。

我现在看到 JS 中不存在 bool 值。我想这个问题现在无效了!

function isVowel(x){

boolean result;

if(x == "A" || x == "E" || x == "I" || x == "O" || x == "U" ) {
result = true;
}
else{
result = false;
}
return result;
}

var input;


input = prompt("Enter a character ");
input = input.toUpperCase();
if(input.length == 1){
isVowel(input);
}
}
else{
while(input.length != 1){
prompt("Enter a character ");
if(input.length == 1){
isVowel(input);
}
}
}

alert(isVowel(input));

最佳答案

您调用isVowel在三个地方,只是扔掉了前两个的返回值。如果您想在前两个位置查看返回值,请显示它(通过 alert,如上一个示例中所示,或其他几种方式中的任何一种)。

还有其他问题:

  • devqon points out , 你用过 boolean而不是 var , 所以代码不会解析
  • 任何时候你发现自己在写作:
    var result;
    if (condition) {
    result = true;
    } else {
    result = false;
    }
    return result;

    ...停下来,让它:
    var result = condition;
    return result;

    所以对于 isVowel :
    function isVowel(x) {

    var result;

    result = x == "A" || x == "E" || x == "I" || x == "O" || x == "U";
    return result;
    }

    (当然,您可以将其设为单行,但这样调试更容易。)
  • 你有一个额外的}在您的 if 之后 block (合理、一致的格式会使这一点显而易见)
  • 您的 while循环永远不会结束,因为你永远不会更新 input返回值为 prompt
  • 而不是 if后跟 while , 使用 do-while

  • 这是仅包含这些更改的更新版本

    function isVowel(x) {

    var result;

    result = x == "A" || x == "E" || x == "I" || x == "O" || x == "U";
    return result;
    }

    var input;

    do {
    input = prompt("Enter a character ");
    if (input.length == 1) {
    alert(isVowel(input));
    }
    } while (input.length != 1);

    关于Javascript检查字符是否为元音,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26926994/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com