此插件由 Adobe Consulting 团队提供,旨在帮助您从 Adobe Analytics 中获取更多的价值。Adobe 客户关怀团队不提供对此插件的支持,包括安装或疑难解答。如果您需要关于此插件的帮助,请与贵组织的帐户管理员联系。他们可以为您安排与顾问的答疑会,以便您向顾问寻求帮助。
inList
插件允许您检查某个值是否已存在于一个分隔字符串或 JavaScript 数组对象中。有一些其他插件需要 inList
插件才能正常运行。与 JavaScript 方法 indexOf()
相比,此插件具有一个明显的优势,即它不会匹配部分字符串。例如,如果您使用此插件检查 "event2"
,则此插件不会匹配包含 "event25"
的字符串。如果您不需要检查分隔字符串或数组中的值,或者如果您要使用自己的 indexOf()
逻辑,则无需使用此插件。
Adobe 提供了一个扩展,通过该扩展,您可以使用一些最常用的插件。
如果您不想使用插件扩展,则可以使用自定义代码编辑器。
在实例化(使用 s_gi
)Analytics 跟踪对象后,将以下代码复制并粘贴到 AppMeasurement 文件中的任意位置。在您的实施中保留代码的注释和版本号可帮助 Adobe 对任何潜在问题进行疑难解答。
/******************************************* BEGIN CODE TO DEPLOY *******************************************/
/* Adobe Consulting Plugin: inList v2.1 */
s.inList=function(lv,vtc,d,cc){if("string"!==typeof vtc)return!1;if("string"===typeof lv)lv=lv.split(d||",");else if("object"!== typeof lv)return!1;d=0;for(var e=lv.length;d<e;d++)if(1==cc&&vtc===lv[d]||vtc.toLowerCase()===lv[d].toLowerCase())return!0;return!1};
/******************************************** END CODE TO DEPLOY ********************************************/
inList
方法使用以下参数:
lv
(必需,字符串或数组):要搜索的值分隔列表或 JavaScript 数组对象vtc
(必需,字符串):要搜索的值d
(可选,字符串):用于分隔 lv
参数中各个值的分隔符。如果未设置,则将默认使用逗号 (,
)。cc
(可选,布尔):如果设置为 true
,则在检查时会区分大小写。如果设置为 false
或忽略,则会在检查不会区分大小写。默认为 false
。调用此方法时,如果找到匹配项,则将返回 true
;如果找不到匹配项,则将返回 false
。
如果…
s.events="event22,event24";
…并运行以下代码…
if(s.inList(s.events,"event22"))
…if 条件语句将为 true
如果…
s.events="event22,event24";
…并运行以下代码…
if(s.inList(s.events,"event2"))
…if 条件语句将为 false,因为 inList 调用在 event2 与 s.events 中的任何分配值之间未找到精确匹配项
如果…
s.events="event22,event24";
…并运行以下代码…
if(!s.inList(s.events,"event23"))
…if 条件语句将为 true,因为 inList 调用在 event23 与 s.events 中的任何分配值之间未找到精确匹配项(请注意 inList 变量调用开头的“NOT”运算符)。
如果…
s.events = "event22,event23";
…并运行以下代码…
if(s.inList(s.events,"EVenT23","",1))
…if 条件语句将为 false。尽管此示例不太符合实际,但它可以表明在使用区分大小写的标志时需要谨慎。
如果…
s.linkTrackVars = "events,eVar1";
…并运行以下代码…
if(s.inList(s.linkTrackVars,"eVar1","|"))
…if 条件语句将为 false。传递到调用的 d 参数的值(即 "|")会假定 s.linkTrackVars 中的各个值以管道字符分隔,而实际上,这些值以逗号分隔。在这种情况下,此插件将尝试在 s.linkTrackVars 的完整值(即 "events,eVar1")与要查找的值(即 "eVar1")之间进行匹配。
cc
参数设为非布尔值的选项。例如,1
是有效的示例检查值。