基础知识:表达式

1、什么是表达式

与JS表达式一样,花漾RPA中的表达式是指:值(或称直接量)、变量和运算符的组合,其计算结果是值。在JavaScript中,表达式有很多种, 如算术表达式、字符串表达式、属性访问表达式、函数定义表达式等等,关于这方面的介绍,可以参考JS的一些教程文章。 本文并不想成为另一本JS书籍,故忽略这些过于专业化的术语。 为方便读者理解,笔者为各位同学准备了下述示例,通过观察这些示例,即可了解何为表达式:

//算术表达式,其值为3
1 + 2

//字符串表达式,其值为 Hua Young
"Hua" + " " + "Young"

//表达式可以包含变量,如 x 值为 6,下述表达式的值为 16
x + 10

//表达式可以包含对象属性的访问,如当前访问账号的名称为 myebay,下述表达式的值为 Helllo myebay
"Hello " + account.name

如果有需要,您还可以编写一个函数定义表达式,如下示例,add(x, y)是我们定义的一个函数,而 add(1,2)的返回值值为 3 :

function add(x, y)  {
   return x + y;
}
add(1, 2);

2、在花漾RPA Editor中使用表达式

在花漾RPA Editor中,几乎每一个 Edit 框都具备两种输入模式,分别是“文本输入模式”与“表达式输入模式”,这两者之间通过左侧JS图标的点击进行切换:  

   

《花漾RPA Editor中Edit框的两种输入模式》

下面做一个示例,我们编写一个非常简单的流程定义,在此流程中通过浏览器访问 cn.bing.com, 然后我们将 bing 首页的 search 框作为我们输出表达式内容的载体:  

   

《通过花漾RPA操纵浏览器访问cn.bing.com》

该流程的第一个节点是“访问网址”,第二个节点是“输入内容”,在此流程节点中,页面节点定位到 Search 框 (这方面的内容已经超出了本文的内容,暂且忽略,后文会有叙及), 在输入值 Edit 框里输入表达式,这里需要提醒您的是,为了在这里输入表达式,一定记得要把JS图标点亮:

   

《花漾RPA中Edit框的两种输入状态》

我们输入表达式 1 + 2,然后点工具栏上的“运行预览”,可以看到,此时,在 search 框显示该表达式的值为“3”:

   

《表达式 1+2 的值》

我们再次输入表达式 "花漾" + "浏览器",点击“运行预览”,可以看到,在 search 框显示该表达式的值为“花漾浏览器”。 这里需要提醒您的是,在表达式中引用字符串,需要对字符串加上双引号予以标注。

   

《表达式 "花漾" + "浏览器" 的值》

我们还可以在表达式中定义并调用一个函数,如下图所示,点击“运行预览”,可以看到,在 search 框显示该表达式的值为“16”:

   

《函数表达式的值》

3、在花漾RPA Editor中使用文本输入模式

下面我们再来看一下在 RPA Editor 中如何使用文本输入模式。

文本输入模式中,在 Edit 框里输入的所有内容默认全部当做文本处理,如下图所示。 尽管我们输入的是 1 + 2,但由于此时是文本模式,花漾RPA会把所有的输入内容全部当作普通文本,因此,输出的结果也是:1 + 2

   

《文本输入模式》

文本输入模式中如果要输入字符串,并不需要对此字符串加上双引号,直接输入文本内容即可:

   

《文本输入模式中输入文本》

在文本输入模式下,如果要引用变量的值,需要加大括号“{}”予以标注,且只支持对象属性访问操作符“.”。 举例,我们希望获得当前流程定义的名称(该流程定义的名称为“表达式Demo”),在全局变量有一个 {flow.name},那么我们可以在文本输入模式下输入: 当前流程的名称:{flow.name},显示的值为:当前流程的名称:表达式,如下图所示:

   

《在文本模式下引用变量》

4、总结

本文我们了解了什么是表达式,以及在花漾RPA Editor中如何使用表达式:

  1. 花漾RPA Editor中几乎每一个 Edit 框都具备两种输入模式,分别是“表达式输入模式”与“文本输入模式”,这两者之间通过点击左侧JS图标进行切换
  2. 表达式输入模式下,在 Edit 框中输入表达式,得到的结果是表达式的值
  3. 文本输入模式下,在 Edit 框中输入的是文本,但可以通过{}引用变量
最后更新于 2022-10-09 15:48