【发布时间】:2018-08-07 23:04:46
【问题描述】:
我最近一直在学习三元运算符,以及它如何成为一个很好的快捷方式,而不是使用 if/else 运算符。
我一直在练习,这是一个程序,它可以根据某人的年龄配置应该去哪种类型的学校。
但是,当我运行代码时,它不起作用。
var age = 15;
function whichSchool(age) {
return (age < 13) ? "Elementary School"
: (age >= 13 && age <= 18) ? "Secondary School"
: (age > 18) ? "University"
}
console.log(whichSchool(15))
它说:意外令牌{。
感谢任何帮助。
谢谢。
【问题讨论】:
-
您在末尾有一个额外的
?,但没有对应的:。对于三元运算符,您需要两者。 -
删除
(age > 18) ?部分,它期待最后一个三元的“else”,它不存在。 -
既然你没有上限...最后一个条件是毫无意义的
-
正确的错误在 chrome: "Uncaught SyntaxError: Unexpected token }" 和 FF "SyntaxError: missing : in conditional expression",请阅读并描述正确的错误,它会帮助你理解怎么了。 “意外的令牌 {”没有意义。
-
另请注意,您刚刚发现为什么在 A** 中链接三元组会很痛苦
标签: javascript ternary-operator