【发布时间】:2018-12-31 01:46:47
【问题描述】:
我目前正在学习关于 Javascript 的 Udacity 课程,一年后我又重新学习了该课程。我回到了我知道答案的地方,但我似乎无法将其反向工程为简单的if 声明
路线:
编写一系列将变量类别设置为等于的三元语句:
“草食动物”如果动物吃植物 “食肉动物”如果动物吃动物 “杂食动物”如果动物吃植物和动物 如果动物不吃植物或动物,则未定义
使用eatsPlants 和eatsAnimals 变量来测试您的代码。
工作答案:
var eatsPlants = false;
var eatsAnimals = true;
var category = (eatsPlants) ? (eatsAnimals) ? "omnivore" : "herbivore"
: (eatsAnimals) ? "carnivore" : undefined;
console.log(category);
我想了解为什么会有 (eatsPlants) ? (吃动物)? 为什么 (eatsAnimals) 被使用了两次?或者简单地说,有人可以为我分解吗?我对编码还是很陌生。
我能想到的最好的就是这个,但它并没有帮助我理解三元版本:
var eatsPlants = false;
var eatsAnimals = true;
var category;
if (eatsPlants && eatsAnimals)
{
category = "Omnivore";
} else if (eatsAnimals){
category="Carnivore"
} else if (eatsPlants) {
category = "Herbivore";
}
else
{
category= undefined;
}
console.log(category);
提前感谢您的所有帮助
【问题讨论】:
标签: javascript