[英]Turning a ternary operator into if else statement on return
我目前正在使用三元運算符,如下所示:
return $scope.productWithEAN(EAN).then(function(product) {
return (product) ? product : $scope.createProduct(productID, name);
});
});
我現在要指向一個函數,如果return (product) ? product
return (product) ? product
我相信最好通過if else語句來完成。 我已經創建了這個,但是我得到了一個意外的返回令牌:
return $scope.productWithEAN(EAN).then(function(product) {
if (return (product) ? product) {
console.log("product is here");
//$scope.checkOrUpdateProduct;
},else {
console.log("product not here");
//$scope.createProduct(productID, name);
};
});
});
有更好的方法嗎?
您不能使用if (return ...)
。 如果要將其重寫為if else語句,則可以使用以下命令:
return $scope.productWithEAN(EAN).then(function(product) {
if (product) {
console.log("product is here");
return $scope.checkOrUpdateProduct();
}
console.log("product not here");
return $scope.createProduct(productID, name);
});
請注意,是不是有必要if else
,如果if
條件符合,else部分將永遠不會為我們達成return
里面if
。 因此,您可以只在if
return
,此后不需要else
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.