我有一个json对象,我要从其中获取数据,其值为(Cow:'Yes',Chicken:'NULL')和(Cow:'Yes',Chicken:'Yes')等。我希望只显示具有'Yes‘的值,然后显示它们的值。目前,我只能返回包含“Yes”的第一个案例,例如,它只返回“Cow”,但是如果两者都有“Yes”值,则目标是返回“Cow,case”。我在这里做错了什么?或者如果有更好的方法,谢谢你的帮助。
switch ("Yes") {
case popup.properties.Beef: return "<span>Cows</span>";
case popup.properties.Pork: return "<span>Pigs</span>";
case popup.properties.Sheep: return "<span>Sheep</span>";
case popup.properties.Goat: return "<span>Goats</span>";
case popup.properties.Lamb: return "<span>Lambs</span>";
case popup.properties.Rabbit: return "<span>Rabbit</span>";
case popup.properties.OtherMeat: return "<span>Other</span>";
case popup.properties.Chicken: return "<span>Chicken</span>";
case popup.properties.Turkey: return "<span>Turkey</span>";
case popup.properties.Duck: return "<span>Duck</span>";
case popup.properties.Goose: return "<span>Geese</span>";
case popup.properties.Pheasant: return "<span>Pheasants</span>";
case popup.properties.Quail: return "<span>Quail</span>";
case popup.properties.OtherPoultry: return "<span>Other Poultry</span>";
default: return "";
}发布于 2019-12-27 03:57:09
您可以获取一个具有所需值的对象,并获得一个字符串数组。
var values = { Beef: "Cows", Pork: "Pigs", Sheep: "Sheep", Goat: "Goats", Lamb: "Lambs", Rabbit: "Rabbit", OtherMeat: "Other", Chicken: "Chicken", Turkey: "Turkey", Duck: "Duck", Goose: "Geese", Pheasant: "Pheasants", Quail: "Quail", OtherPoultry: "Other Poultry" };
result = Object
.keys(popup.properties)
.filter(k => popup.properties[k] === 'Yes')
.map(k => values[k]);https://stackoverflow.com/questions/59492828
复制相似问题