今天,我遇到了一个有趣的场景,正在处理我一直尝试研究的一些代码,到目前为止还没有运气。如果有人愿意的话,希望有人对此有所了解。
成分是存储在每个配方中的JSON对象的列表。 dbIngredient
是我使用findOne
的{{1}}调用撤回的一种成分。比较的是MongoClient
语句,如果两个值都与if
类似,则当前返回false
。
tbsp
使用recipe.ingredients.forEach(async (ingredient) => {
// This will convert the ingredients as needed and form the grocery list.
let dbIngredient = await db.collection('ingredients').findOne({ 'text_friendly_name': ingredient.text_friendly_name });
if (dbIngredient.most_used_measurement != ingredient.measurement)
{
ingredient.quantity = unitConverter.convertMeasurement(ingredient.quantity, ingredient.measurement, dbIngredient.most_used_measurement);
}
});
表示似乎永远不会返回true,但是如果我使用dot
这样的括号表示,则该语句将被评估为dbIngredient['most_used_measurement'] != ingredient['measurement']
。有谁知道为什么true
表示法失败而dot
表示法没有失败?