[英]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.