检查字符串不为空-Zapier Javascript-返回替代值

检查字符串不为空-Zapier Javascript-返回替代值,javascript,zapier,Javascript,Zapier,我正在使用Zapier处理Webhook响应,需要检查第一个输入名称是否为空,然后返回第二个名称 想想名字和昵称。如果用户在NAME1中输入其昵称,则使用该名称,否则在NAME2中返回其实际名称 这是我在Zapier中作为一个步骤添加的JavaScript代码,但是在另一个步骤中的必填字段中使用name变量时不起作用 var output = 'No Name'; if(inputData.NAME1 != '') { output ={name: inputData.NAME1}; } e

我正在使用Zapier处理Webhook响应,需要检查第一个输入名称是否为空,然后返回第二个名称

想想名字和昵称。如果用户在
NAME1
中输入其昵称,则使用该名称,否则在
NAME2
中返回其实际名称

这是我在Zapier中作为一个步骤添加的JavaScript代码,但是在另一个步骤中的必填字段中使用
name
变量时不起作用

var output = 'No Name';
if(inputData.NAME1 != '') {
  output ={name: inputData.NAME1};
} else {
  output= {name: inputDate.NAME2};
}
return output;
通过任务历史记录访问的屏幕截图

通过任务主机访问的屏幕截图

我尝试了分配
输出并在末尾返回它,或者在if语句中返回它


在Zapier测试步骤中,它看起来工作正常,只是在运行时失败。

这里是Zapier平台团队的David

问题在于你的比较。当NAME1没有传入时,它是
未定义的

在JS中,
undefined
不等于“”,因此第一个分支总是运行。不幸的是,
NAME1
没有定义,因此它没有显示在输出中

您可以将代码简化为以下内容:

返回{name:inputData.NAME2 | | inputData.NAME1 | | No name}

它将按照您想要的顺序选择名称,并且有一个默认值


​如果你还有其他问题,请告诉我

太好了,谢谢-我以前没见过这种格式,它很好用。