具有多个条件的Javascript .split()函数

时间:2016-05-10 19:52:10

标签: javascript google-tag-manager

嘿,我在使用GTM中的split函数时遇到了一些麻烦,我想读取body类并返回一个单数字。 E.I.

<body class="landing-holidays subscribe-page"></body>

回到假期&#39;我的挑战是让分裂只是拉出第二个值。代码:

function () {
    var product = document.getElementsByTagName('body')[0];
    if (product != undefined) {
        var product_id = product.getAttribute('class');
        if (product_id != null)
            return product_id.split('-')[1];
    }
    return null
}

我得到&#34;假期订阅&#34;。当我需要&#34;假期&#34;时,有什么见解?

1 个答案:

答案 0 :(得分:2)

您可以使用常规表达。将.split('-')更改为.split(/[\-\s]/)

&#13;
&#13;
var product = document.getElementsByTagName('div')[0];

function run() {
  if (product != undefined) {
    var product_id = product.getAttribute('class');
    if (product_id != null) {
      var a = product_id.split(/[\-\s]/);
      for (var i = 0, l = a.length; i < l; i++) {
        if (a[i] === 'holidays') {
          return a[i];
        }
      }
    }

  }
}
alert(run())
&#13;
<div class="landing-holidays subscribe-page"></div>
&#13;
&#13;
&#13;