gpt4 book ai didi

Javascript Switch 语句无法按预期使用字符串

转载 作者:行者123 更新时间:2023-11-30 18:50:31 25 4
gpt4 key购买 nike

我正在尝试在 ajax 成功回调中使用以下 switch 语句:

success: function(datain) {
switch (datain)
{
case "ERROR. No ID. Try again":
$(".errors").append('There was an error.');
break;

case "ERROR. Wrong captcha. Try again":
$(".errors").append('There was an error.');
break;
}
}

datain 是一个字符串(typeof datain 返回 string),它确实包含与大小写相同的文本、大写和标点符号,那么为什么它不匹配这两种情况?

console.log(datain)console.log("ERROR. No ID. Try again")完全匹配并且都返回 typeofstring那么,为什么我的案例永远无法匹配?


解决方法及原因

palswim 提供的解决方案如下 $.trim(datain) .原因在 Firebug 中是可见的,事实上字符串末尾有一个换行符而我的 switch case 没有......所以我得到“foo\n”并试图匹配“foo”。鉴于 js 使用 ===在开关中,这自然(现在我看到了)就是它失败的原因。

最佳答案

尝试 trimming你的字符串。

在 jQuery 中:

switch($.trim(datain))
{ //...

但是尝试匹配这么长的字符串充满了危险!

关于Javascript Switch 语句无法按预期使用字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4057510/

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