이 문제를 해결하기 위해
var eatsPlants = true;
var eatsAnimals = false;
var category = eatsPlants ? "herbivore" : "carnivore";
console.log(category);
var category = (eatsPlants && eatsAnimals) ? "omnivore" : "undefined";
console.log(category);
어떤 아이디어가 옳은 일을 못하고있다 -
const category = (eatPlants && eatAnimals) ? 'omnivore' : eatAnimals ? 'carnivore' : eatPlants ? 'herbivore' : undefined;
당신은 체인 하나 원의 다른 필요를 삼항 연산자를 사용하여 if-else 분기를 그릴 경우 다른 부분을 다른 부분으로 나누십시오.
그러나 나는 다른 브랜치가 인 경우 코드의 가독성을 유지하기 위해 사용하는 것이 좋습니다. Ternaries는 여러 가지 조건으로 조금 엉망이됩니다.
이것은 if-else 로직에서 분명했을 것입니다.
let category = undefined;
if (eatPlants && eatAnimals)
category = 'omnivore';
else if (eatPlants)
category = 'herbivore';
else if (eatAnimals)
category = 'carnivore';
안녕하세요. StackOverflow는 토론 포럼이나 코드 작성 서비스가 아닙니다. [이 기사] [1]을 보면서 가치있는 질문을하는 것이 도움이 될 수 있습니다. [1] : https://stackoverflow.com/help/how-to-ask – pmcilreavy
'동물이 식물이나 동물을 먹지 않으면 정의되지 않음 '...하지만 동물이 식물을 먹지 않으면 정의되지 않은 결과가 출력됩니다. 그리고 동물들 - 부울 로직에 대해서도 브러쉬를해야합니다. –
도 먹지 말고'undefined'가되어야합니다.''undefined '' –