首页 > 解决方案 > 更改 JS 代码以使用 GTM(箭头函数和展开表达式)

问题描述

a我使用这个 JS 代码从一系列元素中获取标题值li

var res = [...document.querySelectorAll(".breadcrumb li:not(:first-of-type) > a")].map(el => el.getAttribute("title")).join(" - ");
alert(res)

我必须在 Google Tag Manager 中使用它,但它不起作用,因为 GTM 不支持 ECMASCRIPT6。

如何更改箭头函数和展开表达式以使其与标签管理器一起使用?

标签: javascriptecmascript-6google-tag-manager

解决方案


您可以调用Array.prototype.slice转换NodeList为数组。箭头函数可以替换为常规函数:

var res = []
  .slice
  .call(document.querySelectorAll(".breadcrumb li:not(:first-of-type) > a"))
  .map(function (el) {
    return el.getAttribute('title')
  })
  .join(' - ')

推荐阅读