在javascript中使用三元运算符而不是if..else
而不是if…else语句如何使用三元运算或任何替代方法简化javascript中的代码在javascript中使用三元运算符而不是if..else,javascript,if-statement,ternary-operator,Javascript,If Statement,Ternary Operator,而不是if…else语句如何使用三元运算或任何替代方法简化javascript中的代码 if(req.query.pr=="trans"){ util.transUrl(req.originalUrl).then(param => { res.redirect(param); }) } else if(req.query.pr=="inst"){ util.instaUrl(req.originalUrl).then(param => {
if(req.query.pr=="trans"){
util.transUrl(req.originalUrl).then(param => {
res.redirect(param);
})
}
else if(req.query.pr=="inst"){
util.instaUrl(req.originalUrl).then(param => {
res.redirect(param);
})
}
else{
res.status(400).send("Contact the editor of the originating page.")
}
在JS中编写条件语句有多种方法。但是,如果有多个语句,我会说您应该坚持使用
if
else if
else
。但如果您想看到其他方法,请参见:
使用三元运算符?:代码>
使用门逻辑
现在,看看您的代码,这里的if和elseif语句相似。因此,如果使用如下三元运算符,则可以避免使用else:
const {pr} = req.query
if(pr === 'trans' || pr === 'inst'){
util[pr === 'trans' ? 'transUrl' : 'instaUrl'](req.originalUrl)
.then(param => res.redirect(param))
}
else{
res.status(400).send('Contact the editor of the originating page.')
}
<强>仅一个FY<<强>:每当您比较字符串时,请考虑使用<代码>==< /COD>而不是<代码>=。p> 在JS中编写条件语句有多种方法。但是,如果有多个语句,我会说您应该坚持使用
if
else if
else
。但如果您想看到其他方法,请参见:
使用三元运算符?:代码>
使用门逻辑
现在,看看您的代码,这里的if和elseif语句相似。因此,如果使用如下三元运算符,则可以避免使用else:
const {pr} = req.query
if(pr === 'trans' || pr === 'inst'){
util[pr === 'trans' ? 'transUrl' : 'instaUrl'](req.originalUrl)
.then(param => res.redirect(param))
}
else{
res.status(400).send('Contact the editor of the originating page.')
}
<强>仅一个FY<<强>:每当您比较字符串时,请考虑使用<代码>==< /COD>而不是<代码>=。p> 如果有多行代码要执行,否则如果循环比三元运算符可读性更好,请尝试阅读更多关于三元运算符的内容。然后决定是否使用它。条件运算符在这里不太合适。我想第一个
if
和else if
可以压缩,但我更喜欢当前版本,它更具可读性。为了让事情变得更简单,您可以定义一个函数param=>res.redirect(param)
三元运算符最好用于最简单的(一行)if…else条件。如果您只想使用它来减少行数,那么您可以查看是否有多行代码要执行,或者如果循环比三元运算符可读性更好,或者尝试阅读更多关于三元运算符的信息。然后决定是否使用它。条件运算符在这里不太合适。我想第一个if
和else if
可以压缩,但我更喜欢当前版本,它更具可读性。为了让事情变得更简单,您可以定义一个函数param=>res.redirect(param)
三元运算符最好用于最简单的(一行)if…else条件。如果你只是想用它来减少行数,那么你可以看一看没有实际上我错了对不起,它们的变量是inst
,而键是instaURL
,有一个a
,需要通过一些逻辑来添加,最好保持你当时的状态,尽管他们最初检查pr
是否为“inst”
,但当您将所有非“trans”
处理为“inst”
时,实际上我错了。对不起,他们的变量是inst
,而键是instaURL
,但有一个a
,需要通过某种逻辑添加,最好保持你当时的状态,即使他们最初是检查pr
是否是“inst”
,而你处理所有非“trans”
时是“inst”
const {pr} = req.query
if(pr === 'trans' || pr === 'inst'){
util[pr === 'trans' ? 'transUrl' : 'instaUrl'](req.originalUrl)
.then(param => res.redirect(param))
}
else{
res.status(400).send('Contact the editor of the originating page.')
}