मुख्य एपीआई
ये एपीआई, सैंडबॉक्स JavaScript के साथ काम करते हैं. इनकी मदद से, Google Tag Manager में कस्टम टेंप्लेट बनाए जा सकते हैं. हर एपीआई को require() स्टेटमेंट के साथ जोड़ा जाता है. उदाहरण के लिए:
const myAPI = require('myAPI');
addConsentListener
यह फ़ंक्शन, लिसनर फ़ंक्शन को रजिस्टर करता है. यह फ़ंक्शन, सहमति के चुने गए टाइप की स्थिति बदलने पर काम करता है.
यह लिसनर, सहमति के लिए तय किए गए टाइप की स्थिति में बदलाव होने पर हर बार चालू होगा. जैसे, 'सहमति नहीं दी गई' से 'सहमति दी गई' या 'सहमति दी गई' से 'सहमति नहीं दी गई' में बदलाव होने पर. सहमति के ऐसे टाइप को 'मंज़ूरी मिल चुकी है' के तौर पर माना जाता है जिसकी स्थिति सेट नहीं की गई है. इसलिए, अगर सहमति के किसी ऐसे टाइप को 'मंज़ूरी मिल चुकी है' के तौर पर अपडेट किया जाता है जिसकी स्थिति सेट नहीं की गई है, तो लिसनर को कॉल नहीं किया जाएगा. लिसनर फ़ंक्शन यह पक्का करने के लिए ज़िम्मेदार होंगे कि उनका कोड सही संख्या में चले.
उदाहरण:
const isConsentGranted = require('isConsentGranted');
const addConsentListener = require('addConsentListener');
if (!isConsentGranted('ad_storage')) {
let wasCalled = false;
addConsentListener('ad_storage', (consentType, granted) => {
if (wasCalled) return;
wasCalled = true;
const cookies = getMyCookies();
sendFullPixel(cookies);
});
}
सिंटैक्स
addConsentListener(consentType, listener)
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
consentType |
स्ट्रिंग | सहमति का वह टाइप जिस पर स्थिति में होने वाले बदलावों को सुना जाना है. |
listener |
function | सहमति के लिए चुने गए टाइप की स्थिति बदलने पर, इस फ़ंक्शन को चलाया जाता है. |
जब किसी लिसनर को शुरू किया जाता है, तो उसे सहमति के उस टाइप की जानकारी दी जाती है जिसमें बदलाव किया जा रहा है. साथ ही, उसे सहमति के उस टाइप की नई वैल्यू भी दी जाती है:
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
consentType |
स्ट्रिंग | सहमति का वह टाइप जिसमें बदलाव किया जा रहा है. |
granted |
boolean | यह एक बूलियन है. अगर सहमति के टाइप को बदलकर 'मंज़ूरी मिल चुकी है' पर सेट किया जा रहा है, तो इसकी वैल्यू सही होती है. |
इससे जुड़ी अनुमतियां
सहमति के टाइप के लिए, पढ़ने के ऐक्सेस के साथ access_consent की अनुमति.
addEventCallback
addEventCallback एपीआई की मदद से, एक कॉलबैक फ़ंक्शन रजिस्टर किया जा सकता है. यह फ़ंक्शन, इवेंट के खत्म होने पर कॉल किया जाएगा. यह कॉलबैक तब शुरू होगा, जब इवेंट के लिए सभी टैग लागू हो जाएंगे या जब पेज पर मौजूद इवेंट का टाइम आउट पूरा हो जाएगा.
कॉल बैक में दो वैल्यू पास की जाती हैं. पहली वैल्यू, उस कंटेनर का आईडी होती है जो फ़ंक्शन को शुरू करता है. दूसरी वैल्यू, एक ऐसा ऑब्जेक्ट होता है जिसमें इवेंट के बारे में जानकारी होती है.
सिंटैक्स
addEventCallback(callback)
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
callback |
function | इवेंट के खत्म होने पर कॉल किया जाने वाला फ़ंक्शन. |
eventData ऑब्जेक्ट में यह डेटा शामिल होता है:
| कुंजी का नाम | टाइप | ब्यौरा |
|---|---|---|
tags |
ऐरे | टैग डेटा ऑब्जेक्ट का कलेक्शन. इवेंट के दौरान ट्रिगर होने वाले हर टैग की एंट्री इस ऐरे में होगी. टैग डेटा ऑब्जेक्ट में टैग का आईडी (id), उसके चालू होने की स्थिति (status), और उसके चालू होने का समय (executionTime) शामिल होता है. टैग डेटा में, टैग पर कॉन्फ़िगर किया गया अतिरिक्त टैग मेटाडेटा भी शामिल होगा. |
उदाहरण
addEventCallback(function(ctid, eventData) {
logToConsole('Tag count for container ' + ctid + ': ' + eventData['tags'].length);
});
इससे जुड़ी अनुमतियां
aliasInWindow
aliasInWindow एपीआई की मदद से, कोई उपनाम (जैसे, window.foo =
window.bar) बनाया जा सकता है. इससे उन टैग को इस्तेमाल करने में मदद मिलती है जिनके लिए उपनाम की ज़रूरत होती है. fromPath पर मौजूद window ऑब्जेक्ट में मौजूद वैल्यू को, toPath पर मौजूद window ऑब्जेक्ट में मौजूद कुंजी को असाइन करता है. अगर अनुरोध पूरा हो जाता है, तो true दिखाता है. अगर अनुरोध पूरा नहीं होता है, तो false दिखाता है.
सिंटैक्स
aliasInWindow(toPath, fromPath)
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
toPath |
स्ट्रिंग | window ऑब्जेक्ट में बिंदु से अलग किया गया पाथ, जहां वैल्यू को कॉपी किया जाना चाहिए. पाथ में मौजूद सभी कॉम्पोनेंट, window ऑब्जेक्ट में पहले से मौजूद होने चाहिए. |
fromPath |
स्ट्रिंग | कॉपी की जाने वाली वैल्यू के लिए, window में डॉट से अलग किया गया पाथ. अगर वैल्यू मौजूद नहीं है, तो कार्रवाई पूरी नहीं होगी. |
उदाहरण
aliasInWindow('foo.bar', 'baz.qux')
इससे जुड़ी अनुमतियां
toPath और fromPath, दोनों के लिए access_globals ज़रूरी है. toPath के लिए लिखने का ऐक्सेस ज़रूरी है, जबकि fromPath के लिए पढ़ने का ऐक्सेस ज़रूरी है.
callInWindow
इसकी मदद से, window ऑब्जेक्ट के पाथ से बाहर के फ़ंक्शन को कॉल किया जा सकता है. ऐसा नीति के तहत किया जाता है. यह फ़ंक्शन, दिए गए आर्ग्युमेंट के साथ window में दिए गए पाथ पर फ़ंक्शन को कॉल करता है और वैल्यू दिखाता है. अगर रिटर्न टाइप को सीधे तौर पर, सैंडबॉक्स वाली JavaScript में इस्तेमाल किए जा सकने वाले टाइप पर मैप नहीं किया जा सकता, तो undefined दिखेगा. सैंडबॉक्स किए गए JavaScript में, इन आठ तरह के डेटा का इस्तेमाल किया जा सकता है: null, undefined, boolean, number, string, Array, Object, और function. अगर दिया गया पाथ मौजूद नहीं है या किसी फ़ंक्शन का रेफ़रंस नहीं देता है, तो undefined दिखेगा.
सिंटैक्स
callInWindow(pathToFunction, argument [, argument2,... argumentN])
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
pathToFunction |
स्ट्रिंग | window में फ़ंक्शन को कॉल करने के लिए, बिंदु से अलग किया गया पाथ. |
args |
* | फ़ंक्शन में पास किए जाने वाले आर्ग्युमेंट. |
इससे जुड़ी अनुमतियां
execute की अनुमति चालू करके, access_globals.
callLater
यह फ़ंक्शन, किसी फ़ंक्शन को एसिंक्रोनस तरीके से कॉल करने के लिए शेड्यूल करता है. यह फ़ंक्शन, मौजूदा कोड के जवाब देने के बाद कॉल किया जाएगा. यह setTimeout(<function>, 0) के बराबर है.
सिंटैक्स
callLater(function)
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
function |
function | कॉल करने के लिए फ़ंक्शन. |
copyFromDataLayer
यह फ़ंक्शन, डेटा लेयर में मौजूद किसी कुंजी को असाइन की गई मौजूदा वैल्यू दिखाता है: अगर दी गई कुंजी, प्रिमिटिव टाइप, फ़ंक्शन या ऑब्जेक्ट लिटरल है, तो उससे जुड़ी वैल्यू मिलती है. अगर ऐसा नहीं है, तो undefined मिलता है.
सिंटैक्स
copyFromDataLayer(key[, dataLayerVersion])
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
key |
स्ट्रिंग | "a.b.c" फ़ॉर्मैट में मौजूद कुंजी. |
dataLayerVersion |
number | वैकल्पिक डेटा लेयर का वर्शन. डिफ़ॉल्ट वैल्यू 2 होती है. हमारा सुझाव है कि वैल्यू 1 का इस्तेमाल न करें. |
इससे जुड़ी अनुमतियां
copyFromWindow
यह window ऑब्जेक्ट से किसी वैरिएबल को कॉपी करता है. अगर window में मौजूद वैल्यू को सैंडबॉक्स किए गए JavaScript में इस्तेमाल किए जा सकने वाले टाइप से सीधे तौर पर मैप नहीं किया जा सकता, तो undefined को वापस कर दिया जाएगा. सैंडबॉक्स किए गए JavaScript में इन आठ टाइप का इस्तेमाल किया जा सकता है: null,
undefined, boolean, number, string, Array, Object, और function.
यह फ़ेच की गई (और बदली गई) वैल्यू दिखाता है.
सिंटैक्स
copyFromWindow(key)
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
key |
स्ट्रिंग | window में मौजूद वह कुंजी जिसकी वैल्यू कॉपी करनी है. |
इससे जुड़ी अनुमतियां
createArgumentsQueue
यह एक ऐसी कतार बनाता है जिसमें आर्ग्युमेंट ऑब्जेक्ट शामिल होते हैं. यह उन टैग समाधानों के लिए ज़रूरी है जिनके लिए इसकी ज़रूरत होती है.
यह ग्लोबल स्कोप (यानी कि window) में एक फ़ंक्शन बनाता है.इसके लिए, fnKey आर्ग्युमेंट का इस्तेमाल करता है (createQueue के जैसा ही सिमैंटिक). फ़ंक्शन बनाने के बाद, यह एपीआई arrayKey आर्ग्युमेंट का इस्तेमाल करके, window में एक ऐरे बनाता है. अगर यह ऐरे पहले से मौजूद नहीं है, तो ही ऐसा किया जाता है.
fnKey में बनाए गए फ़ंक्शन को कॉल करने पर, यह अपने आर्ग्युमेंट ऑब्जेक्ट को arrayKey में बनाए गए अरे में पुश करता है. एपीआई की दिखाई गई वैल्यू, fnKey में बनाए गए फ़ंक्शन की वैल्यू होती है.
इस फ़ंक्शन के लिए, fnKey और arrayKey के लिए पढ़ने और लिखने की सेटिंग की ज़रूरत होती है. इसके लिए, access_globals की अनुमति ज़रूरी है.
उदाहरण:
const gtag = createArgumentsQueue('gtag', 'dataLayer');
gtag('set', {'currency': 'USD'});
सिंटैक्स
createArgumentsQueue(fnKey, arrayKey)
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
fnKey |
स्ट्रिंग | window में वह पाथ जहां फ़ंक्शन सेट किया गया है. हालांकि, ऐसा तब ही किया जा सकता है, जब वह पाथ पहले से मौजूद न हो. यह आर्ग्युमेंट, स्टैंडर्ड डॉट नोटेशन के साथ काम करता है. अगर कुंजी का पाथ मौजूद नहीं है, तो एक अपवाद थ्रो किया जाता है. इसका मतलब है कि अगर fnKey 'one.two' है, तो यह एक अपवाद देगा. |
arrayKey |
स्ट्रिंग | window में वह पाथ जहां ऐरे सेट किया गया है. हालांकि, ऐसा तब होगा, जब वह पाथ पहले से मौजूद न हो. यह आर्ग्युमेंट, स्टैंडर्ड डॉट नोटेशन के साथ काम करता है. अगर कुंजी का पाथ मौजूद नहीं है, तो एक अपवाद थ्रो किया जाता है. इसका मतलब है कि अगर arrayKey, 'one.two' है और 'one' नाम का कोई ग्लोबल ऑब्जेक्ट मौजूद नहीं है, तो यह एक अपवाद होगा. |
इससे जुड़ी अनुमतियां
createQueue
यह फ़ंक्शन, window में एक ऐरे बनाता है. अगर यह ऐरे पहले से मौजूद नहीं है, तो यह एक ऐसा फ़ंक्शन दिखाता है जो उस ऐरे में वैल्यू पुश करेगा.
इस फ़ंक्शन के लिए, arrayKey की सेटिंग को पढ़ने और लिखने की अनुमति ज़रूरी है.access_globals
उदाहरण:
const dataLayerPush = createQueue('dataLayer');
dataLayerPush({'currency': 'USD'}, {'event': 'myConversion'});
सिंटैक्स
createQueue(arrayKey)
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
arrayKey |
स्ट्रिंग | window में मौजूद वह कुंजी जहां ऐरे सेट किया गया है. हालांकि, ऐसा तब होगा, जब वह कुंजी पहले से मौजूद न हो. यह आर्ग्युमेंट, स्टैंडर्ड डॉट नोटेशन के साथ काम करता है. अगर कुंजी का पाथ मौजूद नहीं है, तो एक अपवाद थ्रो किया जाता है. उदाहरण के लिए, अगर
arrayKey, 'one.two' है और 'one' नाम का कोई
ग्लोबल ऑब्जेक्ट नहीं है, तो यह एक अपवाद
ट्रिगर करेगा. |
इससे जुड़ी अनुमतियां
decodeUri
यह फ़ंक्शन, दिए गए यूआरआई में कोड में बदले गए वर्णों को डिकोड करता है. यह फ़ंक्शन, डिकोड किए गए यूआरआई को दिखाने वाली स्ट्रिंग दिखाता है. गलत इनपुट देने पर, यह undefined दिखाता है.
उदाहरण:
const decode = require('decodeUri');
const decodedUrl = decode(data.encodedUrl);
if (decodedUrl) {
// ...
}
सिंटैक्स
decodeUri(encoded_uri)
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
encoded_uri |
स्ट्रिंग | ऐसा यूआरआई जिसे encodeUri() या किसी अन्य तरीके से एन्कोड किया गया हो. |
इससे जुड़ी अनुमतियां
कोई नहीं.
decodeUriComponent
दिए गए यूआरआई कॉम्पोनेंट में मौजूद, कोड में बदले गए वर्णों को डिकोड करता है. यह डिकोड किए गए यूआरआई कॉम्पोनेंट को दिखाने वाली स्ट्रिंग दिखाता है. अमान्य इनपुट दिए जाने पर, यह फ़ंक्शन undefined दिखाता है.
उदाहरण:
const decode = require('decodeUriComponent');
const decodedUrl = decode(data.encodedUrl);
if (decodedUrl) {
// ...
}
सिंटैक्स
decodeUriComponent(encoded_uri_component)
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
encoded_uri_component |
स्ट्रिंग | यह एक यूआरआई कॉम्पोनेंट है, जिसे encodeUriComponent() या किसी अन्य तरीके से कोड में बदला गया है. |
इससे जुड़ी अनुमतियां
कोई नहीं.
encodeUri
यह फ़ंक्शन, खास वर्णों को छोड़कर, एन्कोड किया गया यूनिफ़ॉर्म रिसोर्स आइडेंटिफ़ायर (यूआरआई) दिखाता है. यह फ़ंक्शन, string दिखाता है. यह दी गई स्ट्रिंग को यूआरआई के तौर पर कोड में बदलता है. अमान्य इनपुट (सिर्फ़ सरोगेट) दिए जाने पर, यह undefined दिखाता है.
उदाहरण:
sendPixel('https://www.example.com/' + encodeUri(pathInput));
सिंटैक्स
encodeUri(uri)
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
uri |
स्ट्रिंग | पूरा यूआरआई. |
इससे जुड़ी अनुमतियां
कोई नहीं.
encodeUriComponent
यह फ़ंक्शन, खास वर्णों को छोड़कर, एन्कोड किया गया यूनिफ़ॉर्म रिसोर्स आइडेंटिफ़ायर (यूआरआई) दिखाता है. यह फ़ंक्शन, string दिखाता है. यह दी गई स्ट्रिंग को यूआरआई के तौर पर कोड में बदलता है. अमान्य इनपुट (सिर्फ़ सरोगेट) दिए जाने पर, यह undefined दिखाता है.
उदाहरण:
sendPixel('https://www.example.com/?' + encodeUriComponent(queryInput));
सिंटैक्स
encodeUriComponent(str)
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
str |
स्ट्रिंग | यूआरआई का एक कॉम्पोनेंट. |
इससे जुड़ी अनुमतियां
कोई नहीं.
fromBase64
fromBase64 एपीआई की मदद से, स्ट्रिंग को base64 फ़ॉर्मैट से डिकोड किया जा सकता है. अमान्य इनपुट दिए जाने पर, undefined दिखाता है.
सिंटैक्स
fromBase64(base64EncodedString)
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
base64EncodedString |
स्ट्रिंग | Base64 कोड में बदली गई स्ट्रिंग. |
उदाहरण
const fromBase64 = require('fromBase64');
const greeting = fromBase64('aGVsbG8=');
if (greeting === 'hello') {
// ...
}
इससे जुड़ी अनुमतियां
कोई नहीं
generateRandom
यह फ़ंक्शन, दी गई रेंज में कोई भी संख्या (पूर्णांक) दिखाता है.
सिंटैक्स
generateRandom(min, max)
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
min |
number | लौटाए गए पूर्णांक की कम से कम संभावित वैल्यू. |
max |
number | लौटाए गए पूर्णांक की ज़्यादा से ज़्यादा संभावित वैल्यू. |
इससे जुड़ी अनुमतियां
कोई नहीं.
getContainerVersion
यह फ़ंक्शन, मौजूदा कंटेनर के बारे में जानकारी देने वाला ऑब्जेक्ट दिखाता है. जवाब में मिले ऑब्जेक्ट में ये फ़ील्ड शामिल होते हैं:
{
containerId: string,
debugMode: boolean,
environmentName: string,
environmentMode: boolean,
previewMode: boolean,
version: string,
}
उदाहरण
const getContainerVersion = require('getContainerVersion');
const sendPixel = require('sendPixel');
if (query('read_container_data')) {
const cv = getContainerVersion();
const pixelUrl = 'https://pixel.com/' +
'?version=' + cv.version +
'&envName=' + cv.environmentName +
'&ctid=' + cv.containerId +
'&debugMode=' + cv.debugMode +
'&previewMode=' + cv.previewMode;
if (query('send_pixel', pixelUrl)) {
sendPixel(pixelUrl);
}
}
सिंटैक्स
getContainerVersion();
इससे जुड़ी अनुमतियां
getCookieValues
यह फ़ंक्शन, दिए गए नाम वाली सभी कुकी की वैल्यू दिखाता है.
सिंटैक्स
getCookieValues(name[, decode])
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
name |
स्ट्रिंग | कुकी का नाम. |
decode |
boolean | इस कुकी से यह कंट्रोल होता है कि कुकी की वैल्यू को JavaScript के
decodeURIComponent() का इस्तेमाल करके डिकोड किया जाए या नहीं. डिफ़ॉल्ट रूप से, यह true पर सेट होता है. |
इससे जुड़ी अनुमतियां
getQueryParameters
यह फ़ंक्शन, मौजूदा यूआरएल के queryKey के लिए, पहले या सभी पैरामीटर दिखाता है.
queryKey से पहली वैल्यू या queryKey से वैल्यू की एक सरणी दिखाता है.
सिंटैक्स
getQueryParameters(queryKey[, retrieveAll])
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
queryKey |
स्ट्रिंग | क्वेरी पैरामीटर से पढ़ने के लिए कुंजी. |
retrieveAll |
boolean | क्या सभी वैल्यू वापस लानी हैं. |
उदाहरण के लिए, अगर मौजूदा यूआरएल https://example.com/path?var=foo&var1=foo1&var=foo2&var=foo है, तो:
getQueryParameters('var') == 'foo'getQueryParameters('var', false) == 'foo'getQueryParameters('var', null) == 'foo'getQueryParameters('var', true) == ['foo', 'foo2', 'foo']
इससे जुड़ी अनुमतियां
get_url को query कॉम्पोनेंट की अनुमति देनी होगी. साथ ही, उसे अनुमति वाली क्वेरी कुंजियों में queryKey तय करना होगा. इसके अलावा, वह किसी भी क्वेरी कुंजी की अनुमति दे सकता है.
getReferrerQueryParameters
getReferrerQueryParameters एपीआई, getQueryParameters की तरह ही काम करता है. हालांकि, यह मौजूदा यूआरएल के बजाय रेफ़रर पर काम करता है. यह फ़ंक्शन, दिए गए रेफ़रर के queryKey के लिए, पहले या सभी पैरामीटर दिखाता है. queryKey से पहली वैल्यू या queryKey से वैल्यू की एक सरणी दिखाता है.
सिंटैक्स
getReferrerQueryParameters(queryKey[, retrieveAll])
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
queryKey |
स्ट्रिंग | क्वेरी पैरामीटर से पढ़ने के लिए कुंजी. |
retrieveAll |
boolean | क्या सभी वैल्यू वापस लानी हैं. |
उदाहरण के लिए, अगर रेफ़र करने वाले का यूआरएल https://example.com/path?var=foo&var1=foo1&var=foo2&var=foo है, तो:
getReferrerQueryParameters('var') == 'foo'getReferrerQueryParameters('var', false) == 'foo'getReferrerQueryParameters('var', null) == 'foo'getReferrerQueryParameters('var', true) == ['foo', 'foo2', 'foo']
इससे जुड़ी अनुमतियां
get_referrer को query कॉम्पोनेंट की अनुमति देनी होगी. साथ ही, अनुमति वाली क्वेरी कुंजियों में queryKey को शामिल करना होगा. इसके अलावा, किसी भी क्वेरी कुंजी को अनुमति दी जा सकती है.
getReferrerUrl
कॉम्पोनेंट टाइप दिए जाने पर, एपीआई रेफ़रर के लिए दस्तावेज़ ऑब्जेक्ट को पढ़ता है. इसके बाद, यह एक ऐसी स्ट्रिंग दिखाता है जो रेफ़रर के हिस्से को दिखाती है. अगर कोई कॉम्पोनेंट नहीं दिया गया है, तो रेफ़र करने वाले का पूरा यूआरएल दिखता है.
सिंटैक्स
getReferrerUrl([component])
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
component |
स्ट्रिंग | यूआरएल से वापस मिलने वाला कॉम्पोनेंट. इनमें से कोई एक स्थिति हो सकती है:
protocol, host, port,
path, query, extension. अगर component, undefined या null है या इनमें से किसी भी कॉम्पोनेंट से मेल नहीं खाता है, तो पूरा यूआरएल दिखेगा. |
इससे जुड़ी अनुमतियां
get_referrer को query कॉम्पोनेंट की अनुमति देनी होगी. साथ ही, अनुमति वाली क्वेरी कुंजियों में queryKey को शामिल करना होगा. इसके अलावा, किसी भी क्वेरी कुंजी को अनुमति दी जा सकती है.
getTimestamp
अब सेवा में नहीं है. getTimestampMillis का इस्तेमाल करें.
यह फ़ंक्शन, Date.now() फ़ंक्शन से मिले number को दिखाता है. यह संख्या, यूनिक्स epoch के बाद से अब तक के समय को मिलीसेकंड में दिखाती है.
सिंटैक्स
getTimestamp();
इससे जुड़ी अनुमतियां
कोई नहीं.
getTimestampMillis
यह फ़ंक्शन, Date.now() फ़ंक्शन से मिले number को दिखाता है. यह संख्या, यूनिक्स epoch के बाद से अब तक के समय को मिलीसेकंड में दिखाती है.
सिंटैक्स
getTimestampMillis();
इससे जुड़ी अनुमतियां
कोई नहीं.
getType
यह फ़ंक्शन, दी गई वैल्यू के टाइप की जानकारी देने वाली स्ट्रिंग दिखाता है. typeof के उलट, getType, array और object के बीच अंतर करता है.
सिंटैक्स
getType(data.someField)
ज़रूरी जानकारी
यहां दी गई टेबल में, हर इनपुट वैल्यू के लिए दिखाई गई स्ट्रिंग की सूची दी गई है.
| इनपुट मान | नतीजा |
|---|---|
undefined |
'undefined' |
null |
'null' |
true |
'boolean' |
12 |
'number' |
'string' |
'string' |
{ a: 3 } |
'object' |
[ 1, 3 ] |
'array' |
(x) => x + 1 |
'function' |
इससे जुड़ी अनुमतियां
कोई नहीं.
getUrl
यह फ़ंक्शन, मौजूदा यूआरएल के पूरे या किसी हिस्से को दिखाने वाली स्ट्रिंग दिखाता है. इसके लिए, कॉम्पोनेंट टाइप और कुछ कॉन्फ़िगरेशन पैरामीटर दिए जाते हैं.
सिंटैक्स
getUrl(component)
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
component |
स्ट्रिंग | यूआरएल से वापस मिलने वाला कॉम्पोनेंट. इनमें से कोई एक होना चाहिए:
protocol, host, port,
path, query, extension,
fragment. अगर कॉम्पोनेंट undefined या null है या इनमें से किसी कॉम्पोनेंट से मेल नहीं खाता है, तो href की पूरी वैल्यू दिखाई जाएगी. |
इससे जुड़ी अनुमतियां
gtagSet
यह gtag सेट कमांड को डेटा लेयर में पुश करता है, ताकि मौजूदा इवेंट और उससे ट्रिगर होने वाले टैग की प्रोसेसिंग पूरी होने के बाद (या टैग प्रोसेसिंग का टाइम आउट पूरा होने के बाद) इसे जल्द से जल्द प्रोसेस किया जा सके. इस अपडेट को इस कंटेनर में प्रोसेस किया जाएगा. इसके बाद, डेटा लेयर की कतार में मौजूद किसी भी आइटम को प्रोसेस किया जाएगा.
उदाहरण के लिए, अगर इसे सहमति की प्रोसेस शुरू करने वाले ट्रिगर पर फ़ायर होने वाले टैग से कॉल किया जाता है, तो अपडेट, सहमति की प्रोसेस शुरू करने वाले इवेंट के प्रोसेस होने से पहले लागू हो जाएगा. उदाहरण के लिए, ads_data_redaction को true या false पर सेट करना या url_passthrough को true या false पर सेट करना.
उदाहरण:
const gtagSet = require('gtagSet');
gtagSet({
'ads_data_redaction': true,
'url_passthrough': true,
});
सिंटैक्स
gtagSet(object)
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
Object |
object | यह एक ऐसा ऑब्जेक्ट होता है जो अपनी प्रॉपर्टी के लिए ग्लोबल स्टेट को अपडेट करता है. |
इससे जुड़ी अनुमतियां
write_data_layer, सभी तय की गई कुंजियों के लिए dataLayer में लिखने की अनुमति की जांच करता है. अगर gtagSet में इनपुट एक सामान्य ऑब्जेक्ट है, तो एपीआई उस ऑब्जेक्ट में मौजूद सभी फ़्लैट किए गए कुंजियों के लिए, लिखने की अनुमति की जांच करेगा. उदाहरण के लिए, gtagSet({foo: {bar: 'baz'}}) के लिए, एपीआई foo.bar के लिए लिखने की अनुमति की जांच करेगा.
अगर gtagSet में इनपुट के तौर पर कोई कुंजी और कुछ नॉन-प्लेन ऑब्जेक्ट वैल्यू दी जाती है, तो एपीआई उस कुंजी के लिए लिखने की अनुमति की जांच करेगा. उदाहरण के लिए, gtagSet('abc', true) के लिए, एपीआई 'abc' के लिए लिखने की अनुमति की जांच करेगा.
ध्यान दें कि अगर इनपुट ऑब्जेक्ट में कोई साइकल है, तो सिर्फ़ उसी ऑब्जेक्ट तक पहुंचने से पहले की कुंजियों की जांच की जाएगी.
injectHiddenIframe
यह कुकी, पेज में न दिखने वाला iframe जोड़ती है.
कॉलबैक को फ़ंक्शन इंस्टेंस के तौर पर दिया जाता है. इन्हें JavaScript फ़ंक्शन में रैप किया जाता है, जो उन्हें कॉल करते हैं.
सिंटैक्स
injectHiddenIframe(url, onSuccess)
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
url |
स्ट्रिंग | आईफ़्रेम के src एट्रिब्यूट की वैल्यू के तौर पर इस्तेमाल किया जाने वाला यूआरएल. |
onSuccess |
function | जब फ़्रेम लोड हो जाता है, तब इस फ़ंक्शन को कॉल किया जाता है. |
इससे जुड़ी अनुमतियां
injectScript
यह फ़ंक्शन, पेज में एक स्क्रिप्ट टैग जोड़ता है, ताकि दिए गए यूआरएल को एसिंक्रोनस तरीके से लोड किया जा सके. कॉल बैक को फ़ंक्शन इंस्टेंस के तौर पर दिया जाता है. साथ ही, इन्हें JavaScript फ़ंक्शन में रैप किया जाता है. ये फ़ंक्शन, कॉल बैक को कॉल करते हैं.
सिंटैक्स
injectScript(url, onSuccess, onFailure[, cacheToken])
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
url |
स्ट्रिंग | इंजेक्ट की जाने वाली स्क्रिप्ट का पता. |
onSuccess |
function | जब स्क्रिप्ट लोड हो जाती है, तब इसे कॉल किया जाता है. |
onFailure |
function | यह तब कॉल किया जाता है, जब स्क्रिप्ट लोड नहीं हो पाती है. |
cacheToken |
स्ट्रिंग | यह एक वैकल्पिक स्ट्रिंग है. इसका इस्तेमाल यह बताने के लिए किया जाता है कि दिए गए यूआरएल को कैश मेमोरी में सेव किया जाना चाहिए. अगर यह वैल्यू दी जाती है, तो JavaScript का अनुरोध करने के लिए सिर्फ़ एक स्क्रिप्ट एलिमेंट बनाया जाएगा. लोड करने की किसी भी अन्य कोशिश के बाद, दिए गए onSuccess और onFailure तरीकों को तब तक कतार में रखा जाएगा, जब तक स्क्रिप्ट लोड नहीं हो जाती. |
इससे जुड़ी अनुमतियां
isConsentGranted
अगर चुनी गई सहमति के लिए मंज़ूरी मिल चुकी है, तो यह फ़ंक्शन 'सही' दिखाता है.
किसी खास सहमति टाइप के लिए सहमति को तब 'मंज़ूरी दी गई' माना जाता है, जब सहमति टाइप को 'मंज़ूरी दी गई' पर सेट किया गया हो या उसे सेट न किया गया हो. अगर सहमति के टाइप को किसी दूसरी वैल्यू पर सेट किया जाता है, तो इसे सहमति नहीं दी गई माना जाएगा.
टैग सेटिंग के लिए Tag Manager का यूज़र इंटरफ़ेस, हमेशा ट्रिगर होने का विकल्प देगा. अगर 'हमेशा चालू रहता है' विकल्प वाला कोई टैग इस एपीआई का इस्तेमाल करता है, तो सहमति को 'सहमति दी गई' माना जाएगा. साथ ही, true वैल्यू दिखेगी. भले ही, सहमति की मौजूदा स्थिति कुछ भी हो.
उदाहरण:
const isConsentGranted = require('isConsentGranted');
if (isConsentGranted('ad_storage')) {
sendFullPixel();
} else {
sendPixelWithoutCookies();
}
सिंटैक्स
isConsentGranted(consentType)
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
consentType |
स्ट्रिंग | सहमति का वह टाइप जिसकी स्थिति की जांच करनी है. |
इससे जुड़ी अनुमतियां
सहमति के टाइप के लिए, पढ़ने के ऐक्सेस के साथ access_consent की अनुमति.
JSON
यह एक ऐसा ऑब्जेक्ट दिखाता है जो JSON फ़ंक्शन उपलब्ध कराता है.
parse() फ़ंक्शन, किसी JSON स्ट्रिंग को पार्स करके, स्ट्रिंग में बताई गई वैल्यू या ऑब्जेक्ट बनाता है. अगर वैल्यू को पार्स नहीं किया जा सकता (जैसे, गलत तरीके से बनाया गया JSON), तो फ़ंक्शन undefined दिखाएगा. अगर इनपुट वैल्यू कोई स्ट्रिंग नहीं है, तो इनपुट को स्ट्रिंग में बदल दिया जाएगा.
stringify() फ़ंक्शन, इनपुट को JSON स्ट्रिंग में बदलता है. अगर वैल्यू को पार्स नहीं किया जा सकता (जैसे, ऑब्जेक्ट में कोई साइकल है), तो यह तरीका undefined दिखाएगा.
सिंटैक्स
JSON.parse(stringInput)
JSON.stringify(value);
पैरामीटर
JSON.parse
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
| stringInput | any | वह वैल्यू जिसे बदलना है. अगर वैल्यू स्ट्रिंग नहीं है, तो इनपुट को स्ट्रिंग में बदल दिया जाएगा. |
JSON.stringify
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
| मान | any | वह वैल्यू जिसे बदलना है. |
उदाहरण
const JSON = require('JSON');
// The JSON input string is converted to an object.
const object = JSON.parse('{"foo":"bar"}');
// The input object is converted to a JSON string.
const str = JSON.stringify({foo: 'bar'});
localStorage
यह कुकी, एक ऐसा ऑब्जेक्ट दिखाती है जिसमें लोकल स्टोरेज को ऐक्सेस करने के तरीके शामिल होते हैं.
सिंटैक्स
const localStorage = require('localStorage');
// Requires read access for the key. Returns null if the key does not exist.
localStorage.getItem(key);
// Requires write access for the key. Returns true if successful.
localStorage.setItem(key, value);
// Requires write access for the key.
localStorage.removeItem(key);
इससे जुड़ी अनुमतियां
उदाहरण
const localStorage = require('localStorage');
if (localStorage) {
const value = localStorage.getItem('my_key');
if (value) {
const success = localStorage.setItem('my_key', 'new_value');
if (success) {
localStorage.removeItem('my_key');
}
}
}
logToConsole
यह फ़ंक्शन, ब्राउज़र कंसोल में आर्ग्युमेंट लॉग करता है.
सिंटैक्स
logToConsole(obj1 [, obj2,... objN])
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
obj1 [, obj2,... objN] |
any | तर्क |
इससे जुड़ी अनुमतियां
makeInteger
यह दी गई वैल्यू को संख्या (पूर्णांक) में बदलता है.
सिंटैक्स
makeInteger(value)
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
value |
any | वह वैल्यू जिसे बदलना है. |
इससे जुड़ी अनुमतियां
कोई नहीं.
makeNumber
यह दी गई वैल्यू को संख्या में बदलता है.
सिंटैक्स
makeNumber(value)
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
value |
any | वह वैल्यू जिसे बदलना है. |
इससे जुड़ी अनुमतियां
कोई नहीं.
makeString
दी गई वैल्यू को स्ट्रिंग के तौर पर दिखाता है.
सिंटैक्स
makeString(value)
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
value |
any | वह वैल्यू जिसे बदलना है. |
इससे जुड़ी अनुमतियां
कोई नहीं.
makeTableMap
यह दो कॉलम वाले सामान्य टेबल ऑब्जेक्ट को Map में बदलता है. इसका इस्तेमाल, दो कॉलम वाले SIMPLE_TABLE टेंप्लेट फ़ील्ड को मैनेज करने में आसान फ़ॉर्मैट में बदलने के लिए किया जाता है.
उदाहरण के लिए, यह फ़ंक्शन किसी टेबल ऑब्जेक्ट को बदल सकता है:
[
{'key': 'k1', 'value': 'v1'},
{'key': 'k2', 'value': 'v2'}
]
में बदलें:
{
'k1': 'v1',
'k2': 'v2'
}
यह एक Object दिखाता है: अगर इसमें की-वैल्यू पेयर जोड़े गए हैं, तो बदला गया Map या अगर ऐसा नहीं है, तो null.
सिंटैक्स
makeTableMap(tableObj, keyColumnName, valueColumnName)
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
tableObj |
सूची | बदलने के लिए टेबल ऑब्जेक्ट. यह मैप की एक सूची है, जिसमें हर Map टेबल में एक पंक्ति को दिखाता है. लाइन ऑब्जेक्ट में मौजूद हर प्रॉपर्टी का नाम, कॉलम का नाम होता है. साथ ही, प्रॉपर्टी की वैल्यू, लाइन में मौजूद कॉलम की वैल्यू होती है. |
keyColumnName |
स्ट्रिंग | उस कॉलम का नाम जिसकी वैल्यू, बदले गए Map में कुंजियां बन जाएंगी. |
valueColumnName |
स्ट्रिंग | उस कॉलम का नाम जिसकी वैल्यू, बदले गए Map में वैल्यू बन जाएंगी. |
इससे जुड़ी अनुमतियां
कोई नहीं.
Math
Math फ़ंक्शन उपलब्ध कराने वाला ऑब्जेक्ट.
सिंटैक्स
const Math = require('Math');
// Retrieve the absolute value.
const absolute = Math.abs(-3);
// Round the input down to the nearest integer.
const roundedDown = Math.floor(3.6);
// Round the input up to the nearest integer.
const roundedUp = Math.ceil(2.2);
// Round the input to the nearest integer.
const rounded = Math.round(3.1);
// Return the largest argument.
const biggest = Math.max(1, 3);
// Return the smallest argument.
const smallest = Math.min(3, 5);
// Return the first argument raised to the power of the second argument.
const powerful = Math.pow(3, 1);
// Return the square root of the argument.
const unsquared = Math.sqrt(9);
पैरामीटर
गणित के फ़ंक्शन के पैरामीटर को संख्याओं में बदल दिया जाता है.
इससे जुड़ी अनुमतियां
कोई नहीं.
Object
यह एक ऐसा ऑब्जेक्ट दिखाता है जो Object तरीके उपलब्ध कराता है.
keys() मेथड, स्टैंडर्ड लाइब्रेरी Object.keys() का तरीका उपलब्ध कराता है. यह फ़ंक्शन, दिए गए ऑब्जेक्ट की अपनी इन्यूमरेबल प्रॉपर्टी के नामों का एक कलेक्शन दिखाता है. इसमें प्रॉपर्टी के नाम उसी क्रम में होते हैं जिस क्रम में for...in... लूप में होते हैं. अगर इनपुट वैल्यू कोई ऑब्जेक्ट नहीं है, तो उसे ऑब्जेक्ट में बदल दिया जाएगा.
values() तरीके से, स्टैंडर्ड लाइब्रेरी Object.values() का व्यवहार मिलता है. यह दिए गए ऑब्जेक्ट की अपनी इन्यूमरेबल प्रॉपर्टी वैल्यू का एक ऐरे दिखाता है. यह ऐरे, उसी क्रम में होता है जिस क्रम में for...in... लूप होता है. अगर इनपुट वैल्यू कोई ऑब्जेक्ट नहीं है, तो उसे ऑब्जेक्ट में बदल दिया जाएगा.
entries() मेथड, स्टैंडर्ड लाइब्रेरी Object.entries() के जैसा काम करता है. यह फ़ंक्शन, दिए गए ऑब्जेक्ट की अपनी इन्यूमरेबल प्रॉपर्टी [key, value] पेयर की एक ऐसी ऐरे दिखाता है जिसमें प्रॉपर्टी उसी क्रम में होती हैं जिस क्रम में for...in... लूप में होती हैं. अगर इनपुट वैल्यू कोई ऑब्जेक्ट नहीं है, तो उसे ऑब्जेक्ट में बदल दिया जाएगा.
freeze() तरीका, स्टैंडर्ड लाइब्रेरी Object.freeze() का व्यवहार उपलब्ध कराता है. फ़्रीज़ किए गए ऑब्जेक्ट में अब बदलाव नहीं किया जा सकता. किसी ऑब्जेक्ट को फ़्रीज़ करने से, उसमें नई प्रॉपर्टी नहीं जोड़ी जा सकतीं, मौजूदा प्रॉपर्टी नहीं हटाई जा सकतीं, और मौजूदा प्रॉपर्टी की वैल्यू नहीं बदली जा सकतीं. freeze() उसी ऑब्जेक्ट को दिखाता है जिसे पास किया गया था. प्रिमिटिव या शून्य आर्ग्युमेंट को फ़्रीज़ किए गए ऑब्जेक्ट की तरह माना जाएगा और उसे वापस कर दिया जाएगा.
delete() तरीके से, स्टैंडर्ड लाइब्रेरी के delete operator का इस्तेमाल किया जा सकता है. यह ऑब्जेक्ट से दी गई कुंजी को हटाता है. हालांकि, अगर ऑब्जेक्ट फ़्रीज़ है, तो ऐसा नहीं किया जा सकता.
स्टैंडर्ड लाइब्रेरी के डिलीट ऑपरेटर की तरह, यह true दिखाता है. ऐसा तब होता है, जब पहली इनपुट वैल्यू (objectInput) ऐसा ऑब्जेक्ट हो जिसे फ़्रीज़ नहीं किया गया है. भले ही, दूसरी इनपुट वैल्यू (keyToDelete) ऐसी कुंजी तय करती हो जो मौजूद नहीं है. अन्य सभी मामलों में, यह false दिखाता है. हालांकि, यह स्टैंडर्ड लाइब्रेरी के डिलीट ऑपरेटर से इन मामलों में अलग है:
keyToDeleteऐसी स्ट्रिंग नहीं हो सकती जिसमें डॉट-डिलिमिटेड का इस्तेमाल किया गया हो और जो नेस्ट की गई कुंजी के बारे में बताती हो.delete()का इस्तेमाल, किसी ऐरे से एलिमेंट हटाने के लिए नहीं किया जा सकता.delete()का इस्तेमाल, ग्लोबल स्कोप से किसी भी प्रॉपर्टी को हटाने के लिए नहीं किया जा सकता.
सिंटैक्स
Object.keys(objectInput)
Object.values(objectInput)
Object.entries(objectInput)
Object.freeze(objectInput)
Object.delete(objectInput, keyToDelete)
पैरामीटर
Object.keys
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
| objectInput | any | वह ऑब्जेक्ट जिसकी कुंजियों को गिनना है. अगर इनपुट कोई ऑब्जेक्ट नहीं है, तो उसे ऑब्जेक्ट में बदल दिया जाएगा. |
Object.values
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
| objectInput | any | वह ऑब्जेक्ट जिसकी वैल्यू की गिनती करनी है. अगर इनपुट कोई ऑब्जेक्ट नहीं है, तो उसे ऑब्जेक्ट में बदल दिया जाएगा. |
Object.entries
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
| objectInput | any | वह ऑब्जेक्ट जिसके की/वैल्यू पेयर की गिनती करनी है. अगर इनपुट कोई ऑब्जेक्ट नहीं है, तो उसे ऑब्जेक्ट में बदल दिया जाएगा. |
Object.freeze
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
| objectInput | any | फ़्रीज़ करने के लिए ऑब्जेक्ट. अगर इनपुट कोई ऑब्जेक्ट नहीं है, तो उसे फ़्रीज़ किए गए ऑब्जेक्ट के तौर पर माना जाएगा. |
Object.delete
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
| objectInput | any | वह ऑब्जेक्ट जिसकी कुंजी मिटानी है. |
| keyToDelete | स्ट्रिंग | मिटाने के लिए टॉप-लेवल की कुंजी. |
उदाहरण
const Object = require('Object');
// The keys of an object are enumerated in an array.
const keys = Object.keys({foo: 'bar'});
// The values of an object are enumerated in an array.
const values = Object.values({foo: 'bar'});
// The key/value pairs of an object are enumerated in an array.
const entries = Object.entries({foo: 'bar'});
// The input object is frozen.
const frozen = Object.freeze({foo: 'bar'});
// The key is removed from the input object.
const obj1 = {deleteme: 'value'};
Object.delete(obj1, 'deleteme');
// Only a top-level key can be specified as the key to delete.
const obj2 = {nested: {key: 'value'}};
Object.delete(obj2, 'nested.key'); // This has no effect.
Object.delete(obj2.nested, 'key'); // This deletes the nested key.
parseUrl
यह फ़ंक्शन, दिए गए यूआरएल के सभी कॉम्पोनेंट पार्ट वाला एक ऑब्जेक्ट दिखाता है. यह URL ऑब्जेक्ट की तरह होता है.
यह एपीआई, गलत फ़ॉर्मैट वाले किसी भी यूआरएल के लिए undefined दिखाएगा. सही फ़ॉर्मैट वाले यूआरएल के लिए, यूआरएल स्ट्रिंग में मौजूद नहीं होने वाले फ़ील्ड की वैल्यू एक खाली स्ट्रिंग होगी. इसके अलावा, searchParams के मामले में, यह एक खाली ऑब्जेक्ट होगा.
जवाब में मिले ऑब्जेक्ट में ये फ़ील्ड होंगे:
{
href: string,
origin: string,
protocol: string,
username: string,
password: string,
host: string,
hostname: string,
port: string,
pathname: string,
search: string,
searchParams: Object<string, (string|Array)>,
hash: string,
}
उदाहरण
const parseUrl = require('parseUrl');
const urlObject = parseUrl('https://abc:xyz@example.com:8080/foo?param=val%2Cue#bar');
सिंटैक्स
parseUrl(url);
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
url |
स्ट्रिंग | वह पूरा यूआरएल जिसे पार्स किया जाएगा. |
इससे जुड़ी अनुमतियां
कोई नहीं.
queryPermission
अनुमति दी गई और सीमित की गई अनुमतियों के बारे में क्वेरी करना. यह फ़ंक्शन बूलियन वैल्यू दिखाता है: अगर अनुमति दी गई है, तो true दिखाता है. अगर अनुमति नहीं दी गई है, तो false दिखाता है.
सिंटैक्स
queryPermission(permission, functionArgs*)
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
permission |
स्ट्रिंग | अनुमति का नाम. |
functionArgs |
any | जिस अनुमति के बारे में क्वेरी की जा रही है उसके हिसाब से फ़ंक्शन के आर्ग्युमेंट अलग-अलग होते हैं. नीचे फ़ंक्शन के तर्क देखें. |
फ़ंक्शन के आर्ग्युमेंट
sendPixel, injectScript, injectHiddenIframe: दूसरा पैरामीटर, यूआरएल स्ट्रिंग होना चाहिए.
writeGlobals, readGlobals: दूसरे पैरामीटर में, लिखी या पढ़ी जा रही कुंजी होनी चाहिए.
readUrl: पूरे यूआरएल को पढ़ा जा सकता है या नहीं, यह क्वेरी करने के लिए किसी और तर्क की ज़रूरत नहीं है. यह क्वेरी करने के लिए कि किसी कॉम्पोनेंट को पढ़ा जा सकता है या नहीं, कॉम्पोनेंट का नाम दूसरे आर्ग्युमेंट के तौर पर पास करें:
if (queryPermission('readUrl','port')) {
// read the port
}
यह देखने के लिए कि किसी क्वेरी की को पढ़ा जा सकता है या नहीं, क्वेरी की को तीसरे पैरामीटर के तौर पर पास करें:
if (queryPermission('readUrl','query','key')) {
getUrlComponent(...);
}
इससे जुड़ी अनुमतियां
कोई नहीं.
readAnalyticsStorage
यह कुकी, Analytics के लिए सेव किया गया डेटा वापस लाती है. साथ ही, client_id और sessions के साथ एक ऑब्जेक्ट दिखाती है.
client_id: यह एक स्ट्रिंग है, जो आंकड़ों के लिए इस्तेमाल किए गए क्लाइंट आईडी को दिखाती है.sessions: यह ऑब्जेक्ट का एक कलेक्शन होता है. इसमें मौजूदा सेशन के बारे में जानकारी होती है. हर ऑब्जेक्ट में ये शामिल हैं:measurement_id: Analytics डेस्टिनेशन के मेज़रमेंट आईडी को दिखाने वाली स्ट्रिंग.session_id: यह एक स्ट्रिंग है, जो टाइमस्टैंप को दिखाती है. इससे मौजूदा सेशन की पहचान होती है.session_number: यह एक संख्या है. इससे पता चलता है कि मौजूदा सेशन तक पहुंचने से पहले, उपयोगकर्ता ने कितने सेशन शुरू किए.
सिंटैक्स
const readAnalyticsStorage = require('readAnalyticsStorage');
const cookieOptions = {
cookie_prefix: "xyz",
cookie_domain: "google.com",
cookie_path: "/",
};
readAnalyticsStorage(cookieOptions);
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
cookieOptions |
object |
ज़रूरी नहीं है. किसी खास
cookie_prefix, cookie_domain या
cookie_path के साथ कुकी पढ़ने के विकल्प.
|
इससे जुड़ी अनुमतियां
उदाहरण
const readAnalyticsStorage = require('readAnalyticsStorage');
const analyticsStorageData = readAnalyticsStorage();
sendOfflineEvent(analyticsStorageData.client_id, "tutorial_begin");
readCharacterSet
document.characterSet की वैल्यू दिखाता है.
सिंटैक्स
readCharacterSet()
पैरामीटर
कोई नहीं.
इससे जुड़ी अनुमतियां
readTitle
document.title की वैल्यू दिखाता है.
सिंटैक्स
readTitle()
पैरामीटर
कोई नहीं.
इससे जुड़ी अनुमतियां
require
यह फ़ंक्शन, नाम के हिसाब से बिल्ट-इन फ़ंक्शन को इंपोर्ट करता है. यह एक फ़ंक्शन या ऑब्जेक्ट दिखाता है, जिसे आपके प्रोग्राम से कॉल किया जा सकता है. अगर ब्राउज़र में बिल्ट-इन फ़ंक्शन काम नहीं करता है, तो यह undefined दिखाता है.
सिंटैक्स
require(name)
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
name |
स्ट्रिंग | इंपोर्ट किए जाने वाले फ़ंक्शन का नाम. |
उदाहरण
const getUrl = require('getUrl');
const url = getUrl();
इससे जुड़ी अनुमतियां
कोई नहीं.
sendPixel
यह अनुमति मिलने पर, दिए गए यूआरएल एंडपॉइंट पर GET अनुरोध भेजा जा सकता है.
सिंटैक्स
sendPixel(url, onSuccess, onFailure)
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
url |
स्ट्रिंग | पिक्सल को कहां भेजना है. |
onSuccess |
function | इस फ़ंक्शन को तब कॉल किया जाता है, जब पिक्सल लोड हो जाता है. ध्यान दें: अनुरोध के सही तरीके से भेजे जाने के बावजूद, onSuccess को चलाने के लिए ब्राउज़र को मान्य इमेज रिस्पॉन्स की ज़रूरत पड़ सकती है. |
onFailure |
function | यह तब कॉल किया जाता है, जब पिक्सल लोड नहीं हो पाता. ध्यान दें: अनुरोध के सही तरीके से भेजे जाने पर भी, onFailure फ़ंक्शन तब चल सकता है, जब सर्वर से इमेज का मान्य जवाब न मिले. |
इससे जुड़ी अनुमतियां
setCookie
यह कुकी को सेट या मिटाता है. इसके लिए, कुकी का नाम, वैल्यू, और विकल्प तय किए जाते हैं.
सिंटैक्स
setCookie(name, value[, options, encode])
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
name |
स्ट्रिंग | कुकी का नाम. |
value |
स्ट्रिंग | कुकी की वैल्यू. |
options |
object | यह Domain, Path, Expires, Max-Age, Secure, और SameSite एट्रिब्यूट के बारे में बताता है. (नीचे दिए गए विकल्प देखें.) |
encode |
boolean | यह कुकी कंट्रोल करती है कि कुकी की वैल्यू को JavaScript के encodeURIComponent() के साथ कोड में बदला जाना है या नहीं.
यह डिफ़ॉल्ट रूप से true पर सेट होता है. |
- डोमेन: अगर मौजूद है, तो इसे
options['domain']प्रॉपर्टी सेट करती है. इस वैल्यू को'auto'पर सेट करें, ताकि दस्तावेज़ की जगह के आधार पर, सबसे बड़े डोमेन का इस्तेमाल करके कुकी को लिखा जा सके. अगर ऐसा नहीं होता है, तो यह एक के बाद एक छोटे सबडोमेन आज़माएगा. अगर ये सभी तरीके काम नहीं करते हैं, तो यह बिना डोमेन के कुकी लिखने की कोशिश करेगा. अगर कोई वैल्यू सेट नहीं की जाती है, तो यह बिना किसी डोमेन के कुकी को लिखने की कोशिश करेगा. ध्यान दें: जब किसी ऐसी कुकी कोdocument.cookieमें लिखा जाता है जिसके लिए कोई डोमेन तय नहीं किया गया है, तो उपयोगकर्ता एजेंट, कुकी के डोमेन को डिफ़ॉल्ट रूप से मौजूदा दस्तावेज़ की जगह के होस्ट पर सेट कर देगा. - पाथ: अगर मौजूद है, तो इसे
options['path']सेट करता है. जब पाथ की जानकारी के बिना किसी कुकी कोdocument.cookieमें लिखा जाता है, तो उपयोगकर्ता एजेंट, कुकी के पाथ को डिफ़ॉल्ट रूप से मौजूदा दस्तावेज़ की जगह के पाथ पर सेट कर देगा. - अगर मौजूद है, तो
options['max-age']ने Max-Age: सेट किया है. - समयसीमा खत्म होने की तारीख: अगर मौजूद है, तो
options['expires']ने सेट की है. अगर यह मौजूद है, तो यह यूटीसी फ़ॉर्मैट में तारीख की स्ट्रिंग होनी चाहिए.Date.toUTCString()का इस्तेमाल, इस पैरामीटर के लिएDateको फ़ॉर्मैट करने के लिए किया जा सकता है. - सुरक्षित: अगर मौजूद है, तो इसे
options['secure']ने सेट किया है. - SameSite: अगर मौजूद है, तो इसे
options['samesite']सेट करता है.
इससे जुड़ी अनुमतियां
setDefaultConsentState
यह डेटा लेयर में सहमति से जुड़ा डिफ़ॉल्ट अपडेट पुश करता है, ताकि मौजूदा इवेंट और उससे ट्रिगर होने वाले टैग के प्रोसेस होने के तुरंत बाद इसे प्रोसेस किया जा सके. ऐसा तब होता है, जब टैग के प्रोसेस होने का टाइम आउट खत्म हो जाता है. इस कंटेनर में अपडेट को प्रोसेस करने की गारंटी है. ऐसा डेटा लेयर में मौजूद किसी भी आइटम से पहले किया जाता है. सहमति के बारे में ज़्यादा जानें.
उदाहरण:
const setDefaultConsentState = require('setDefaultConsentState');
setDefaultConsentState({
'ad_storage': 'denied',
'analytics_storage': 'granted',
'third_party_storage': 'denied',
'region': ['US-CA'],
'wait_for_update': 500
});
सिंटैक्स
setDefaultConsentState(consentSettings)
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
consentSettings |
object | यह एक ऐसा ऑब्जेक्ट है जो सहमति के लिए तय किए गए टाइप की डिफ़ॉल्ट स्थिति तय करता है. |
consentSettings ऑब्जेक्ट, सहमति के किसी भी टाइप की स्ट्रिंग को 'granted' या 'denied' में से किसी एक पर मैप करता है. इस एट्रिब्यूट के लिए ये वैल्यू इस्तेमाल की जा सकती हैं:
| कुंजी का नाम | टाइप | ब्यौरा |
|---|---|---|
consentType |
स्ट्रिंग | सहमति के हर टाइप के लिए, वैल्यू को `'granted'` या `'denied'` पर सेट किया जा सकता है. `'granted'` के अलावा किसी भी वैल्यू को `'denied'` के तौर पर माना जाएगा. वैल्यू को `undefined` पर सेट करने से, इसकी पिछली वैल्यू पर कोई असर नहीं पड़ेगा. |
region |
ऐरे | क्षेत्र के कोड का एक वैकल्पिक कलेक्शन. इससे यह तय किया जाता है कि सहमति की सेटिंग किस क्षेत्र पर लागू होती हैं. क्षेत्र के कोड, ISO 3166-2 फ़ॉर्मैट में देश और/या उपविभागों के हिसाब से दिखाए जाते हैं. |
wait_for_update |
number | यह नीति, मिलीसेकंड में वैल्यू तय करती है. इससे यह कंट्रोल किया जाता है कि डेटा भेजने से पहले कितनी देर तक इंतज़ार करना है. इस कुकी का इस्तेमाल, सहमति लेने वाले ऐसे टूल के साथ किया जाता है जो एसिंक्रोनस तरीके से लोड होते हैं. |
इससे जुड़ी अनुमतियां
consentSettings ऑब्जेक्ट में, सहमति के सभी टाइप के लिए access_consent अनुमति.
setInWindow
यह फ़ंक्शन, दी गई कुंजी पर window में दी गई वैल्यू सेट करता है. डिफ़ॉल्ट रूप से, अगर window में कोई वैल्यू पहले से मौजूद है, तो यह तरीका उस वैल्यू को सेट नहीं करेगा. window में वैल्यू सेट करने के लिए, overrideExisting से true तक की वैल्यू सेट करें. इससे कोई फ़र्क़ नहीं पड़ता कि कोई मौजूदा वैल्यू मौजूद है या नहीं. यह फ़ंक्शन बूलियन वैल्यू दिखाता है: वैल्यू सेट होने पर true और वैल्यू सेट न होने पर false.
सिंटैक्स
setInWindow(key, value, overrideExisting)
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
key |
स्ट्रिंग | window में मौजूद वह कुंजी जहां वैल्यू को रखना है. |
value |
* | window में सेट की जाने वाली वैल्यू. |
overrideExisting |
boolean | यह फ़्लैग यह दिखाता है कि वैल्यू को window में सेट किया जाना चाहिए. भले ही, वहां कोई वैल्यू मौजूद हो या न हो. |
इससे जुड़ी अनुमतियां
sha256
यह फ़ंक्शन, इनपुट का SHA-256 डाइजेस्ट कैलकुलेट करता है. साथ ही, base64 में एन्कोड किए गए डाइजेस्ट के साथ कॉलबैक शुरू करता है. ऐसा तब तक होता है, जब तक options ऑब्जेक्ट किसी दूसरे आउटपुट एन्कोडिंग के बारे में नहीं बताता.
उदाहरण:
sha256('inputString', (digest) => {
sendPixel('https://example.com/collect?id=' + digest);
data.gtmOnSuccess();
}, data.gtmOnFailure);
sha256('inputString', (digest) => {
sendPixel('https://example.com/collect?id=' + digest);
data.gtmOnSuccess();
}, data.gtmOnFailure, {outputEncoding: 'hex'});
सिंटैक्स
sha256(input, onSuccess, onFailure = undefined, options = undefined)
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
input |
स्ट्रिंग | वह स्ट्रिंग जिसके लिए हैश का हिसाब लगाना है. |
onSuccess |
function | इस फ़ंक्शन को, base64 में कोड किए गए डाइजेस्ट के साथ कॉल किया जाता है. हालांकि, अगर options ऑब्जेक्ट में आउटपुट के लिए कोई दूसरा एन्कोडिंग तय किया गया है, तो ऐसा नहीं किया जाता. |
onFailure |
function | इस फ़ंक्शन को तब कॉल किया जाता है, जब डाइजेस्ट का हिसाब लगाते समय कोई गड़बड़ी होती है या ब्राउज़र में sha256 के लिए नेटिव सपोर्ट नहीं होता. इस कॉलबैक को, गड़बड़ी का नाम और मैसेज वाले ऑब्जेक्ट के साथ कॉल किया जाता है. |
options |
object | आउटपुट एन्कोडिंग तय करने के लिए, वैकल्पिक विकल्पों वाला ऑब्जेक्ट. अगर
इसे तय किया गया है, तो ऑब्जेक्ट में outputEncoding कुंजी होनी चाहिए. इसकी वैल्यू base64 या hex में से कोई एक होनी चाहिए. |
इससे जुड़ी अनुमतियां
कोई नहीं.
templateStorage
यह फ़ंक्शन, टेंप्लेट स्टोरेज को ऐक्सेस करने के तरीकों वाला ऑब्जेक्ट दिखाता है. टेंप्लेट स्टोरेज की मदद से, एक ही टेंप्लेट के कई एक्ज़ीक्यूशन के बीच डेटा शेयर किया जा सकता है. टेंप्लेट स्टोरेज में सेव किया गया डेटा, पेज के लाइफ़टाइम तक बना रहता है.
सिंटैक्स
const templateStorage = require('templateStorage');
templateStorage.getItem(key);
templateStorage.setItem(key, value);
templateStorage.removeItem(key);
// Deletes all stored values for the template.
templateStorage.clear();
इससे जुड़ी अनुमतियां
उदाहरण
const templateStorage = require('templateStorage');
const sendPixel = require('sendPixel');
// Ensure sendPixel is called only once per page.
if (templateStorage.getItem('alreadyRan')) {
data.gtmOnSuccess();
return;
}
templateStorage.setItem('alreadyRan', true);
sendPixel(
data.oncePerPagePixelUrl,
data.gtmOnSuccess,
() => {
templateStorage.setItem('alreadyRan', false);
data.gtmOnFailure();
});
toBase64
toBase64 एपीआई की मदद से, किसी स्ट्रिंग को base64 कोड में बदला जा सकता है.
सिंटैक्स
toBase64(input)
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
input |
स्ट्रिंग | कोड में बदलने के लिए स्ट्रिंग. |
उदाहरण
const toBase64 = require('toBase64');
const base64Hello = toBase64('hello');
इससे जुड़ी अनुमतियां
कोई नहीं
updateConsentState
यह डेटा लेयर में सहमति से जुड़ा अपडेट पुश करता है, ताकि मौजूदा इवेंट और उससे ट्रिगर होने वाले टैग के प्रोसेस होने के बाद, इसे जल्द से जल्द प्रोसेस किया जा सके. इसके अलावा, इसे तब भी प्रोसेस किया जा सकता है, जब टैग को प्रोसेस करने का टाइम आउट खत्म हो गया हो. इस कंटेनर में अपडेट को प्रोसेस करने की गारंटी है. ऐसा डेटा लेयर में मौजूद किसी भी आइटम से पहले किया जाता है. सहमति के बारे में ज़्यादा जानें.
उदाहरण:
const updateConsentState = require('updateConsentState');
updateConsentState({
'ad_storage': 'granted',
'analytics_storage': 'denied',
'third_party_storage': 'granted',
});
सिंटैक्स
updateConsentState(consentSettings)
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
consentSettings |
object | यह एक ऐसा ऑब्जेक्ट है जो सहमति के तय किए गए टाइप के लिए, स्थिति को अपडेट करता है. |
consentSettings ऑब्जेक्ट, सहमति के किसी भी टाइप की स्ट्रिंग को 'granted' या 'denied' में से किसी एक पर मैप करता है. इस एट्रिब्यूट के लिए ये वैल्यू इस्तेमाल की जा सकती हैं:
| कुंजी का नाम | टाइप | ब्यौरा |
|---|---|---|
consentType |
स्ट्रिंग | हर तरह की सहमति के लिए, वैल्यू को 'मंज़ूरी दी गई' या 'अस्वीकार की गई' पर सेट किया जा सकता है. 'granted' के अलावा किसी भी वैल्यू को 'denied' माना जाएगा. वैल्यू को 'undefined' पर सेट करने से, इसकी पिछली वैल्यू पर कोई असर नहीं पड़ेगा. |
इससे जुड़ी अनुमतियां
consentSettings ऑब्जेक्ट में, सहमति के सभी टाइप के लिए access_consent अनुमति.
टेस्ट एपीआई
ये एपीआई, सैंडबॉक्स किए गए JavaScript टेस्ट के साथ काम करते हैं. इनकी मदद से, Google Tag Manager में कस्टम टेंप्लेट के लिए टेस्ट बनाए जा सकते हैं. इन टेस्ट एपीआई के लिए, require()
स्टेटमेंट की ज़रूरत नहीं होती. कस्टम टेंप्लेट टेस्ट के बारे में ज़्यादा जानें.
assertApi
यह फ़ंक्शन, एक मैच करने वाला ऑब्जेक्ट दिखाता है. इसका इस्तेमाल, दिए गए एपीआई के बारे में आसानी से पुष्टि करने के लिए किया जा सकता है.
सिंटैक्स
assertApi(apiName)
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
apiName |
स्ट्रिंग | जांच करने के लिए एपीआई का नाम; यह वही स्ट्रिंग है जिसे require() को पास किया गया था.
|
मैचर
Subject.wasCalled()Subject.wasNotCalled()Subject.wasCalledWith(...expected)Subject.wasNotCalledWith(...expected)
उदाहरण
assertApi('sendPixel').wasCalled();
assertApi('getUrl').wasNotCalled();
assertApi('makeNumber').wasCalledWith('8');
assertApi('setInWindow').wasNotCalledWith('myVar', 'theWrongValue');
assertThat
assertThat API को Google की [Truth] लाइब्रेरी के आधार पर बनाया गया है. यह एक ऐसा ऑब्जेक्ट दिखाता है जिसका इस्तेमाल, किसी विषय की वैल्यू के बारे में आसानी से दावे करने के लिए किया जा सकता है. दावे के गलत होने पर, टेस्ट तुरंत बंद हो जाएगा और उसे 'असफल' के तौर पर मार्क कर दिया जाएगा. हालांकि,
एक टेस्ट में फ़ेल होने से, दूसरे टेस्ट केस पर कोई असर नहीं पड़ेगा.
सिंटैक्स
assertThat(actual, opt_message)
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
actual |
any | फ़्लुएंट चेक में इस्तेमाल की जाने वाली वैल्यू. |
opt_message |
स्ट्रिंग | अगर पुष्टि नहीं हो पाती है, तो प्रिंट करने के लिए वैकल्पिक मैसेज. |
मैचर
| मैचर | ब्यौरा |
|---|---|
isUndefined() |
इस बात की पुष्टि करता है कि विषय undefined है. |
isDefined() |
इस कुकी से यह पुष्टि होती है कि विषय undefined नहीं है. |
isNull() |
इस बात की पुष्टि करता है कि विषय null है. |
isNotNull() |
इस कुकी से यह पुष्टि होती है कि विषय null नहीं है. |
isFalse() |
इस बात की पुष्टि करता है कि विषय false है. |
isTrue() |
इस बात की पुष्टि करता है कि विषय true है. |
isFalsy() |
यह दावा करता है कि विषय गलत है. फ़ॉल्सी वैल्यू ये हैं:
undefined, null, false,
NaN, 0, और '' (खाली स्ट्रिंग). |
isTruthy() |
यह दावा करता है कि विषय सही है. फ़ॉल्सी वैल्यू ये हैं:
undefined, null, false,
NaN, 0, और '' (खाली स्ट्रिंग). |
isNaN() |
यह पुष्टि करता है कि विषय, NaN वैल्यू है. |
isNotNaN() |
यह पुष्टि करता है कि विषय, NaN के अलावा कोई भी वैल्यू है. |
isInfinity() |
यह पुष्टि करता है कि विषय पॉज़िटिव या नेगेटिव इनफ़िनिटी है. |
isNotInfinity() |
यह पुष्टि करता है कि विषय, पॉज़िटिव या नेगेटिव इनफ़िनिटी के अलावा कोई भी वैल्यू है. |
isEqualTo(expected) |
यह पुष्टि करता है कि विषय, दी गई वैल्यू के बराबर है. यह वैल्यू की तुलना है, रेफ़रंस की तुलना नहीं. ऑब्जेक्ट और ऐरे के कॉन्टेंट की तुलना बार-बार की जाती है. |
isNotEqualTo(expected) |
यह दावा करता है कि विषय, दी गई वैल्यू के बराबर नहीं है. यह वैल्यू की तुलना है, रेफ़रंस की तुलना नहीं. ऑब्जेक्ट और ऐरे के कॉन्टेंट की तुलना बार-बार की जाती है. |
isAnyOf(...expected) |
यह दावा करता है कि विषय, दी गई वैल्यू में से किसी एक के बराबर है. यह वैल्यू की तुलना है, रेफ़रंस की तुलना नहीं. ऑब्जेक्ट और ऐरे के कॉन्टेंट की तुलना बार-बार की जाती है. |
isNoneOf(...expected) |
यह दावा करता है कि विषय, दी गई किसी भी वैल्यू के बराबर नहीं है. यह वैल्यू की तुलना है, रेफ़रंस की तुलना नहीं है. ऑब्जेक्ट और ऐरे के कॉन्टेंट की तुलना बार-बार की जाती है. |
isStrictlyEqualTo(expected) |
यह दावा करता है कि विषय, दी गई वैल्यू के ठीक बराबर (===) है. |
isNotStrictlyEqualTo(expected) |
यह दावा करता है कि विषय, दी गई वैल्यू के ठीक बराबर (!==) नहीं है. |
isGreaterThan(expected) |
इस फ़ंक्शन का इस्तेमाल यह पुष्टि करने के लिए किया जाता है कि क्रम के हिसाब से तुलना करने पर, विषय की वैल्यू दी गई वैल्यू से ज़्यादा (>) है. |
isGreaterThanOrEqualTo(expected) |
इस फ़ंक्शन का इस्तेमाल यह पुष्टि करने के लिए किया जाता है कि क्रम से तुलना करने पर, विषय की वैल्यू दी गई वैल्यू (>=) से ज़्यादा या उसके बराबर है. |
isLessThan(expected) |
इस फ़ंक्शन का इस्तेमाल यह पुष्टि करने के लिए किया जाता है कि विषय, क्रम से तुलना करने पर दी गई वैल्यू से कम (<) है. |
isLessThanOrEqualTo(expected) |
यह दावा करता है कि विषय, क्रम के हिसाब से तुलना करने पर दी गई वैल्यू से कम या उसके बराबर (<=) है. |
contains(...expected) |
यह पुष्टि करता है कि विषय, एक ऐसी सरणी या स्ट्रिंग है जिसमें दिए गए सभी मान किसी भी क्रम में शामिल हैं. यह वैल्यू की तुलना है, रेफ़रंस की तुलना नहीं है. ऑब्जेक्ट और ऐरे के कॉन्टेंट की तुलना, बार-बार की जाती है. |
doesNotContain(...expected) |
यह पुष्टि करता है कि विषय एक ऐसा कलेक्शन या स्ट्रिंग है जिसमें दी गई कोई भी वैल्यू शामिल नहीं है. यह वैल्यू की तुलना है, न कि रेफ़रंस की तुलना. ऑब्जेक्ट और ऐरे के कॉन्टेंट की तुलना बार-बार की जाती है. |
containsExactly(...expected) |
यह पुष्टि करता है कि विषय एक ऐसा कलेक्शन है जिसमें दी गई सभी वैल्यू किसी भी क्रम में शामिल हैं और कोई अन्य वैल्यू शामिल नहीं है. यह वैल्यू की तुलना है, न कि रेफ़रंस की तुलना. ऑब्जेक्ट और ऐरे के कॉन्टेंट की तुलना, बार-बार की जाती है. |
doesNotContainExactly(...expected) |
यह पुष्टि करता है कि विषय एक ऐसा कलेक्शन है जिसमें दिए गए वैल्यू के सेट से अलग वैल्यू का सेट शामिल है. यह वैल्यू की तुलना है, रेफ़रंस की तुलना नहीं. ऑब्जेक्ट और ऐरे के कॉन्टेंट की तुलना बार-बार की जाती है. |
hasLength(expected) |
इस फ़ंक्शन से यह पुष्टि की जाती है कि विषय, दी गई लंबाई वाली कोई ऐरे या स्ट्रिंग है. अगर वैल्यू ऐरे या स्ट्रिंग नहीं है, तो यह दावा हमेशा फ़ेल हो जाता है. |
isEmpty() |
यह पुष्टि करता है कि विषय एक ऐसा ऐरे या स्ट्रिंग है जो खाली है (लंबाई = 0). अगर वैल्यू ऐरे या स्ट्रिंग नहीं है, तो यह दावा हमेशा फ़ेल हो जाता है. |
isNotEmpty() |
यह पुष्टि करता है कि विषय एक ऐसा कलेक्शन या स्ट्रिंग है जो खाली नहीं है (लंबाई > 0). अगर वैल्यू, ऐरे या स्ट्रिंग नहीं है, तो यह दावा हमेशा फ़ेल हो जाता है. |
isArray() |
यह दावा करता है कि विषय का टाइप एक ऐरे है. |
isBoolean() |
यह पुष्टि करता है कि विषय का टाइप बूलियन है. |
isFunction() |
यह पुष्टि करता है कि विषय का टाइप एक फ़ंक्शन है. |
isNumber() |
यह पुष्टि करता है कि विषय का टाइप कोई संख्या है. |
isObject() |
यह दावा करता है कि विषय का टाइप एक ऑब्जेक्ट है. |
isString() |
यह पुष्टि करता है कि विषय का टाइप स्ट्रिंग है. |
उदाहरण
assertThat(undefined).isUndefined();
assertThat(id, 'ID must be defined').isDefined();
assertThat(null).isNull();
assertThat(undefined).isNotNull();
assertThat(true).isTrue();
assertThat(false).isFalse();
assertThat(1).isTruthy();
assertThat('').isFalsy();
assertThat(1/0).isInfinity();
assertThat(0).isNotInfinity();
assertThat(-'foo').isNaN();
assertThat(100).isNotNaN();
assertThat(sentUrl).isEqualTo('https://endpoint.example.com/?account=12345');
assertThat(category).isNotEqualTo('premium');
assertThat(5).isAnyOf(1, 2, 3, 4, 5);
assertThat(42).isNoneOf('the question', undefined, 41.9);
assertThat('value').isStrictlyEqualTo('value');
assertThat('4').isNotStrictlyEqualTo(4);
assertThat(['a', 'b', 'c']).contains('a', 'c');
assertThat(['x', 'y', 'z']).doesNotContain('f');
assertThat(['1', '2', '3']).containsExactly('3', '2', '1');
assertThat(['4', '5']).doesNotContainExactly('4');
assertThat('a string').hasLength(8);
assertThat([]).isEmpty();
assertThat('another string').isNotEmpty();
fail
यह फ़ंक्शन, मौजूदा टेस्ट को तुरंत फ़ेल कर देता है. साथ ही, अगर कोई मैसेज दिया गया है, तो उसे प्रिंट करता है.
सिंटैक्स
fail(opt_message);
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
opt_message |
स्ट्रिंग | गड़बड़ी के मैसेज का टेक्स्ट लिखना ज़रूरी नहीं है. |
उदाहरण
fail('This test has failed.');
mock
mock एपीआई की मदद से, सैंडबॉक्स किए गए एपीआई के व्यवहार को बदला जा सकता है. मॉक एपीआई का इस्तेमाल टेंप्लेट कोड में सुरक्षित तरीके से किया जा सकता है. हालांकि, यह सिर्फ़ टेस्ट मोड में काम करता है.
हर टेस्ट को चलाने से पहले, मॉक को रीसेट कर दिया जाता है.
सिंटैक्स
mock(apiName, returnValue);
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
apiName |
स्ट्रिंग | जिस एपीआई को मॉक करना है उसका नाम; यह वही स्ट्रिंग है जिसे require() को पास किया गया था |
returnValue |
any | एपीआई या एपीआई की जगह कॉल किए गए फ़ंक्शन के लिए, वैल्यू को वापस लाने का विकल्प. अगर returnValue कोई फ़ंक्शन है, तो Sandboxed API की जगह उस फ़ंक्शन को कॉल किया जाता है. अगर returnValue कोई फ़ंक्शन नहीं है, तो Sandboxed API की जगह उस वैल्यू को दिखाया जाता है. |
उदाहरण
mock('encodeUri', "https://endpoint.example.com/?account=12345");
mock('sendPixel', function(url, onSuccess, onFailure) {
onSuccess();
});
mockObject
mockObject एपीआई की मदद से, सैंडबॉक्स किए गए उन एपीआई के व्यवहार को बदला जा सकता है जो ऑब्जेक्ट दिखाते हैं. इस एपीआई का इस्तेमाल टेंप्लेट कोड में सुरक्षित तरीके से किया जा सकता है. हालांकि, यह सिर्फ़ टेस्ट मोड में काम करता है. हर टेस्ट को चलाने से पहले, मॉक को रीसेट कर दिया जाता है.
सिंटैक्स
mockObject(apiName, objectMock);
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
apiName |
स्ट्रिंग | जिस एपीआई को मॉक करना है उसका नाम; यह वही स्ट्रिंग है जिसे require() को पास किया गया था |
objectMock |
object | एपीआई या एपीआई की जगह कॉल किए गए फ़ंक्शन के लिए, वैल्यू को वापस लाने का विकल्प. यह एक ऑब्जेक्ट होना चाहिए. |
उदाहरण
const storage = {};
mockObject('localStorage', {
setItem: (key, value) => {storage[key] = value;},
getItem: (key) => storage[key],
});
runCode
यह टेम्प्लेट के लिए कोड को रन करता है. इसका मतलब है कि यह दिए गए इनपुट डेटा ऑब्जेक्ट के साथ, मौजूदा टेस्ट एनवायरमेंट में कोड टैब के कॉन्टेंट को रन करता है.
सिंटैक्स
runCode(data)
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा |
|---|---|---|
data |
object | टेस्ट में इस्तेमाल किया जाने वाला डेटा ऑब्जेक्ट. |
रिटर्न वैल्यू
वैरिएबल टेंप्लेट के लिए, किसी वैरिएबल की वैल्यू दिखाता है. साथ ही, अन्य सभी टेंप्लेट टाइप के लिए undefined दिखाता है.
उदाहरण
runCode({field1: 123, field2: 'value'});