gpt4 book ai didi

javascript - 为什么(str === undefined)没有返回任何东西

转载 作者:行者123 更新时间:2023-11-30 20:30:41 24 4
gpt4 key购买 nike

function hey(str) {
for (let char of str){
if (str.slice(-1) !== "?" && str === str.toUpperCase() && str !== " "){
return 'Whoa, chill out!';
}
else if (str.slice(-1) === "?" && str === str.toUpperCase()){
return "Calm down, I know what I'm doing!";
}
else if(str.slice(-1) === "?" && str !== str.toUpperCase()){
return "Sure.";
}
else if (str === " " || str === undefined){
return "Fine. Be that way!";
}
else {
return 'Whatever.';
}
}
}

hey('');

link

鲍勃鲍勃是一个懒散的少年。在谈话中,他的 react 非常有限。

鲍勃回答“当然。”如果你问他一个问题。

他回答“哇,冷静点!”如果你对他大吼大叫。

他回答“冷静,我知道我在做什么!”如果你对他大声提问。

他说‘好吧。那样吧!如果你实际上什么都没说就对他说话。

他回答“随便”。其他任何事情。

最佳答案

它们是您代码中的两个错误。

  • for 循环是不必要的。
  • 您必须使用 trim 函数删除无用的空格,以便比较对 Bob 说的内容是否为空字符串。

function hey(str) {
const trimmedStr = (str || '').trim();

if (trimmedStr === '') {
return "Fine. Be that way!";
}

if (trimmedStr.slice(-1) === "?") {
return trimmedStr === trimmedStr.toUpperCase()
? "Calm down, I know what I'm doing!"
: "Sure.";
}

return trimmedStr === trimmedStr.toUpperCase()
? 'Whoa, chill out!'
: 'Whatever.';
}

console.log(hey(' '));
console.log(hey('FOO?'));
console.log(hey('Foo?'));
console.log(hey('FOO'));
console.log(hey('Foo'));

关于javascript - 为什么(str === undefined)没有返回任何东西,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50365525/

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