如何删除返回值,如果变量是空白的javascript
How to delete return value if variable is blank in javascript
我写了一个函数:
function abcd(gg,hh,ii,jj){
return "Hi,'n'nBelow is alert."'n'n"+gg+"'n"+hh+"'n"+ii+"'n"+jj+";
}
,其中4个变量gg,hh,ii,jj已经全局写入和动态调用。其中"gg"包含"Approval is done","hh"包含"Approval is done","ii"包含"Approval is done","jj"包含"Approval is done"。我担心的是,有时我有gg, hh, ii或jj的值,有时没有,我得到的输出如下,如果我有上述所有变量的值函数代码:
Hi,
Below is alert.
Approval is done.
Approval is done.
Approval is done.
Approval is done.
所以如果'ii'是空白的,那么我需要如下,但我的代码返回行空间,如果'ii'是空白的:
Hi,
Below is alert.
Approval is done.
Approval is done.
Approval is done.
最干净的可能是这样的:
function abcd(gg,hh,ii,jj){
return "Hi,'n'nBelow is alert.'n'n"
+ (gg ? gg + "'n" : '')
+ (hh ? hh + "'n" : '')
+ (ii ? ii + "'n" : '')
+ jj;
}
三元运算符(?:
)的格式为condition ? if_true : if_false
。您可以检查字符串上的"假"值(null
和''
都计数为假),因此它只会输出非假的内容。
如果ii将是一个空字符串,这里有一个快速修复:
function abcd(gg,hh,ii,jj){
return "Hi,'n'nBelow is alert.'n'n" + [gg,hh,ii,jj].filter(Boolean).join("'n");
}
.filter(Boolean)
基本上过滤空字符串,(因为这些将返回false
,这是一个boolean
)。
.join("'n")
将数组转换为string
,但使用'n
而不是,
您可以使用Array.filter
过滤掉空白的,然后将它们连接起来:
function getNonBlanks(array) {
return array.filter(function (i) {
// we only want items with a length
return i.length > 0;
});
}
function abcd(gg,hh,ii,jj){
return "Hi,'n'nBelow is alert.'n'n" + getNonBlanks([gg,hh,ii,jj]).join("'n");
}
相关文章:
- Javascript变量到PHP变量-如果语句不起作用,则发布
- 如果i变量'It’’’’It’’没有在里面使用
- PHP:运行后变量不工作“;如果“;命令
- 如果为null,则设置javascript变量的值
- 如果变量不是't已传递给函数.这是正确的方式吗
- 如果JS会话变量为null,如何避免500内部服务器错误
- 如果项目不匹配,则显示变量
- 如果无法解析变量,则使 Jade (Pug) 失败
- PHP 如果特定日期到期,则不回显变量
- 如果循环中至少有一个元素返回 false,如何将变量设置为 false
- Javascript:如果有三个变量
- 如果字符串保存在变量中,如何查找包含字符串的ID
- 如果变量在使用它的块内被修改,则可以ng
- 如果通过字符串变量发送,HTML内部的子窗口将显示为文本
- 如果全局上下文中的变量是属性,那么为了闭包的目的,如何区分它们
- 如果我不这样做会发生什么;t在javascript中的变量中分配新的Image
- 如果传递了DateTime变量,请使用Javascript更改Div类
- 如果有javascript代码,请验证php变量
- 原型取决于全局变量(如果该变量发生变化怎么办)
- 我可以't在javascript中添加两个变量.如果我更改要添加的变量的顺序,它要么忽略第二个变量,要么连接