使用映射使JavaScript对象成员值更具可读性

时间:2009-11-04 15:34:22

标签: javascript mapping analytics

所以我有这个Omniture对象。它被称为s。

s

在内部,我们跟踪“道具”和“eVariables”中的一堆信息。

s.prop5  = 'foo'
s.prop22 = 'baz'
s.var6   = 'bar'

我们选择分配哪些道具变量和哪些变量,取决于我们跟踪的页面。 例如,在主页上,我们可能希望跟踪prop5,prop6和evar2,但是在注册页面上,我们可能希望跟踪prop4,prop5,prop9,prop10,evar4,evar5。它各不相同。

每个变量和每个prop都代表某种关键的分析信息。

现在,即使这个解决方案并不理想,因为道具#s可以全部融合在一起,我们确实有一个内部保留的主列表,解释哪个变量代表什么。

  

prop5表示“页面名称”

     

prop6表示“页面类别”

     

(等等)

现在,这很好,并且它运行良好,但我们经常必须将代码传递给第三方,以便他们自己分配值。我们可能有第三方创建页面,我们想对其进行分析,但我们需要它们能够获取适当的信息来跟踪。为了使其更具可读性,我们正在考虑实现一些映射代码。

companyName.pageName = 'This is the page name'
companyName.contentType = 'This is the content type'
companyName.campaignId  = 'This is the campaign ID'

这更具可读性。然后,我们将遍历“companyName”对象,并在适当的时候将每个值分配回's'。

你们觉得怎么样?这会是一个好习惯吗?

1 个答案:

答案 0 :(得分:3)

老实说,我不明白为什么你会首先使用神秘的属性名称。为什么不使用你在内部给第三方的名字。它不会让你的生活更轻松吗?