此外掛程式由 Adobe Consulting 提供,協助您從 Adobe Analytics 中獲得更多價值。Adobe 客戶服務不提供此外掛程式的支援,包括安裝或疑難排解在內。如果您需要與此外掛程式有關的協助,請聯絡貴組織的 Adobe 客戶團隊。他們可幫您安排顧問會議,以尋求協助。
Numbers Suite 提供一系列 JavaScript 函數。其中包含下列外掛程式:
zeroPad
:在數字的開頭加上特定數量的零。如果變數需要特定位數,此外掛程式非常實用;例如當您使用 JavaScript 日期物件,且想要以兩位數 (而非僅一位數) 來格式化日期的月和日時。例如 01/09/2020
而非 1/9/2020
。randomNumber
:產生具有特定位數的隨機數。如果您部署協力廠商標記,而且想要防快取的隨機數,此外掛程式就相當實用。twoDecimals
:將數字捨入至最接近的百位數。此外掛程式適用於貨幣用途,可讓您將數字捨入至有效的貨幣值。Web SDK尚不支援此外掛程式。
Adobe提供的擴充功能可讓您搭配Adobe Analytics使用最常用的外掛程式。
如果您不想使用常見Analytics外掛程式擴充功能,可以使用自訂程式碼編輯器。
Analytics 追蹤物件實例化 (使用 s_gi
) 後,將下列程式碼複製並貼到 AppMeasurement 檔案中的任何位置。保留您實施中的程式碼備註和版本號碼,有助於 Adobe 疑難排解任何可能問題。
/******************************************* BEGIN CODE TO DEPLOY *******************************************/
/* Adobe Consulting Plugin: zeroPad v1.0 */
function zeroPad(num,nod){num=parseInt(num);nod=parseInt(nod);if(isNaN(num)||isNaN(nod))return"";var c=nod-num.toString().length+ 1;return Array(+(0<c&&c)).join("0")+num};
/* Adobe Consulting Plugin: randomNumber v2.0 (zeroPad plug-in optional)*/
function randomNumber(nod){nod="number"===typeof nod?17>Math.abs(nod)?Math.round(Math.abs(nod)):17:10;for(var a="1",c=0;c<nod;c++) a+="0";a=Number(a);a=Math.floor(Math.random().toFixed(nod)*a)+"";a.length!==nod&&"undefined"!==typeof zeroPad&&(a=zeroPad(a,nod)); return a};
/* Adobe Consulting Plugin: twoDecimals v1.0 */
function twoDecimals(v){return"undefined"===typeof v||void 0===v||isNaN(v)?0:Number(Number(v).toFixed(2))};
/******************************************** END CODE TO DEPLOY ********************************************/
zeroPad
函數會使用以下引數:
num
引數的開頭。randomNumber
函數會使用以下引數:
twoDecimals
函數會使用以下引數:
num
引數,但會在其值的開頭加上特定數量的零,以確保傳回值具有正確的位數。s.eVar25 = zeroPad(25.5562, 5) //sets eVar25 equal to "00025"
s.prop1 = zeroPad(25, 1) //sets prop1 equal to "25"
s.prop1 = zeroPad(232425235,23) //sets prop1 equal to "00000000000000232425235"
s.eVar65 = randomNumber(15) //sets eVar65 equal to "721759731750342" or some other random 15-digit number
randomNumber() //returns a random 10-digit number but is useless since this isn't used in an expression
var j = randomNumber(35) //sets a variable named j equal to "15476068651810060" or another random 17-digit number
s.events = "event10=" + twoDecimals("85.4827128694") //sets s.events="event10=85.48"
var fivehundredthirtytwo = twoDecimals(532.000000001) //sets the variable fivehundredthirtytwo equal to 532
s.eVar65 = twoDecimals("672132.9699736457") //sets s.eVar65 equal to 672132.97