API principales
Ces API fonctionnent avec du code JavaScript en bac à sable pour créer des modèles personnalisés
Tag Manager. Chaque API est ajoutée avec une instruction require()
, par exemple :
const myAPI = require('myAPI');
addConsentListener
Enregistre une fonction d'écouteur à exécuter lorsque l'état du consentement spécifié les modifications de type.
L'écouteur donné sera appelé à chaque fois que l'état de l'objet le type de consentement passe de "Refusé" à "Accordé", ou de "Accordé" à "Refusé". Un consentement sans état est considéré comme accordé. L'écouteur n'est donc pas appelé si un objet le type de consentement non défini devient "accordé". Les fonctions d'écouteur seront chargées de s'assurer que leur code s'exécute le nombre de fois approprié.
Exemple :
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);
});
}
Syntaxe
addConsentListener(consentType, listener)
Paramètres
Paramètre | Type | Description |
---|---|---|
consentType |
chaîne | Type de consentement pour écouter les changements d'état. |
listener |
function | Fonction à exécuter lorsque l'état du type de consentement spécifié des modifications. |
Lorsqu'un écouteur est appelé, le type de consentement lui est transmis modifié et la nouvelle valeur de ce type de consentement:
Paramètre | Type | Description |
---|---|---|
consentType |
chaîne | Type de consentement qui est modifié. |
granted |
booléen | Booléen qui est "true" si le type de consentement spécifié est modifié à accorder. |
Autorisations associées
Autorisation access_consent
avec accès en lecture pour le type de consentement.
addEventCallback
L'API addEventCallback
vous permet d'enregistrer une fonction de rappel qui
à la fin d'un événement. Le rappel est invoqué lorsque toutes les
les balises de l'événement ont été exécutées, ou si le délai avant expiration de l'événement "sur la page" est atteint.
Le rappel reçoit deux valeurs, l'identifiant du conteneur qui appelle la méthode
et un objet contenant des informations sur l'événement.
Syntaxe
addEventCallback(callback)
Paramètres
Paramètre | Type | Description |
---|---|---|
callback |
function | Fonction à invoquer à la fin de l'événement. |
L'objet eventData
contient les données suivantes:
Nom de la clé | Type | Description |
---|---|---|
tags |
Array | Tableau d'objets de données de tags. Toutes les balises déclenchées pendant l'événement
auront une entrée dans ce tableau. L'objet de données de tag contient le paramètre
l'ID de la balise (id ), son état d'exécution
(status ), et son temps d'exécution
(executionTime ). Les données de la balise incluent également
s'il s'agit des métadonnées
configurées au niveau de la balise. |
Exemple
addEventCallback(function(ctid, eventData) {
logToConsole('Tag count for container ' + ctid + ': ' + eventData['tags'].length);
});
Autorisations associées
aliasInWindow
L'API aliasInWindow
vous permet de créer un alias (par exemple, window.foo =
window.bar
), ce qui facilite la prise en charge de certaines balises nécessitant un alias. Attributions
la valeur de l'objet window
, qui se trouve au niveau de fromPath
, de la clé dans le
window
au niveau de toPath
. Renvoie true
en cas de réussite, false
.
sinon.
Syntaxe
aliasInWindow(toPath, fromPath)
Paramètres
Paramètre | Type | Description |
---|---|---|
toPath |
chaîne | Chemin d'accès séparé par un point dans l'objet window où une valeur
doit être copié. Tous les composants du chemin d'accès au dernier composant
doit déjà exister dans l'objet window . |
fromPath |
chaîne | Chemin d'accès à la valeur à copier, séparé par un point dans window . Si
la valeur n'existe pas, l'opération échouera. |
Exemple
aliasInWindow('foo.bar', 'baz.qux')
Autorisations associées
access_globals
est obligatoire pour toPath
et fromPath
. toPath
nécessite un accès en écriture, fromPath
nécessite un accès en lecture.
callInWindow
Permet d'appeler des fonctions à partir d'un chemin d'accès à partir de l'objet window
, dans une règle
de manière contrôlée. Appelle la fonction au chemin d'accès indiqué dans window
avec la valeur
et renvoie la valeur. Si le type renvoyé ne peut pas être directement mappé avec
Un type compatible avec le JavaScript en bac à sable, undefined
, est renvoyé. La
les huit types compatibles avec le code JavaScript de bac à sable sont null
, undefined
,
boolean
, number
, string
, Array
, Object
et function
. Si la valeur
chemin d'accès n'existe pas ou ne fait pas référence à une fonction, undefined
est
renvoyé.
Syntaxe
callInWindow(pathToFunction, argument [, argument2,... argumentN])
Paramètres
Paramètre | Type | Description |
---|---|---|
pathToFunction |
chaîne | Un chemin d'accès séparé par un point vers la fonction dans window pour
. |
args |
* | Arguments à transmettre à la fonction. |
Autorisations associées
access_globals
avec l'autorisation execute
activée.
callLater
Planifie un appel à une fonction pour qu'il s'exécute de manière asynchrone. La fonction sera
appelé après le retour du code actuel. Cela équivaut à
setTimeout(<function>, 0)
Syntaxe
callLater(function)
Paramètres
Paramètre | Type | Description |
---|---|---|
function |
function | Fonction à appeler. |
copyFromDataLayer
Renvoie la valeur actuellement attribuée à la clé donnée dans la couche de données :
valeur trouvée au niveau de la clé donnée s'il s'agit d'un type, d'une fonction ou d'un objet primitifs
littérale, ou undefined
dans le cas contraire.
Syntaxe
copyFromDataLayer(key[, dataLayerVersion])
Paramètres
Paramètre | Type | Description |
---|---|---|
key |
chaîne | Clé au format "a.b.c". |
dataLayerVersion |
nombre | Le champ facultatif data version du calque. La valeur par défaut est "2". Il est fortement déconseillé utilisez la valeur 1. |
Autorisations associées
copyFromWindow
Copie une variable d'un objet window
. Si la valeur de window
ne peut pas être
directement mappé à un type compatible avec le code JavaScript de bac à sable, undefined
sera
renvoyé. Les huit types pris en charge dans JavaScript en bac à sable sont null
,
undefined
, boolean
, number
, string
, Array
, Object
et function
.
Renvoie la valeur récupérée (et forcée).
Syntaxe
copyFromWindow(key)
Paramètres
Paramètre | Type | Description |
---|---|---|
key |
chaîne | Clé dans le window dont la valeur doit être copiée. |
Autorisations associées
createArgumentsQueue
Crée une file d'attente contenant des objets d'argument, compatible avec le tag les solutions qui en ont besoin.
Crée une fonction dans un champ d'application global (window
), à l'aide de l'argument fnKey
(même sémantique que createQueue
). Une fois la fonction créée, cette API
crée un tableau dans window
(s'il n'existe pas déjà) à l'aide de l'arrayKey
.
Lorsque la fonction créée sous fnKey
est appelée, elle transmet ses arguments
dans le tableau créé sous arrayKey
. La valeur renvoyée par l'API est
créée sous fnKey
.
Cette fonction nécessite le paramètre de lecture et d'écriture pour fnKey
et arrayKey
sur
l'autorisation access_globals
.
Exemple :
const gtag = createArgumentsQueue('gtag', 'dataLayer');
gtag('set', {'currency': 'USD'});
Syntaxe
createArgumentsQueue(fnKey, arrayKey)
Paramètres
Paramètre | Type | Description |
---|---|---|
fnKey |
chaîne | Chemin d'accès dans window où la fonction est définie, le cas échéant
n'existent pas encore. Cet argument est compatible avec la notation par points standard. Si le
chemin d'accès de la clé n'existe pas, une exception est générée. Autrement dit, si
fnKey est 'one.two' , il génère une
une exception. |
arrayKey |
chaîne | Chemin d'accès dans window où le tableau est défini, si ce n'est pas le cas
existent déjà. Cet argument est compatible avec la notation par points standard. Si le
chemin d'accès de la clé n'existe pas, une exception est générée. Autrement dit, si
arrayKey correspond à 'one.two' , et il n'y a pas de valeur
d'un objet global nommé 'one' , une exception
une exception. |
Autorisations associées
createQueue
Crée un tableau dans window
(s'il n'existe pas déjà) et renvoie une
qui transmettra des valeurs à ce tableau.
Cette fonction nécessite le paramètre de lecture et d'écriture pour arrayKey
sur le
Autorisation access_globals
.
Exemple :
const dataLayerPush = createQueue('dataLayer');
dataLayerPush({'currency': 'USD'}, {'event': 'myConversion'});
Syntaxe
createQueue(arrayKey)
Paramètres
Paramètre | Type | Description |
---|---|---|
arrayKey |
chaîne | Clé dans window où le tableau est défini, si ce n'est pas le cas
existent déjà. Cet argument est compatible avec la notation par points standard. Si le
chemin d'accès de la clé n'existe pas, une exception est générée. Par exemple, si
arrayKey correspond à 'one.two' , et il n'y a pas de valeur
d'un objet global nommé 'one' , une exception
une exception. |
Autorisations associées
decodeUri
Décode tous les caractères encodés dans l'URI fourni. Renvoie une chaîne qui :
qui représente l'URI décodé. Renvoie undefined
lorsque la valeur est incorrecte
saisie.
Exemple :
const decode = require('decodeUri');
const decodedUrl = decode(data.encodedUrl);
if (decodedUrl) {
// ...
}
Syntaxe
decodeUri(encoded_uri)
Paramètres
Paramètre | Type | Description |
---|---|---|
encoded_uri |
chaîne | Un URI qui a été encodé par
encodeUri()
ou par d'autres moyens. |
Autorisations associées
Aucun
decodeUriComponent
Décode tous les caractères encodés dans le composant URI fourni. Renvoie une
chaîne qui représente le composant URI décodé. Renvoie undefined
lorsque
fourni avec une entrée non valide.
Exemple :
const decode = require('decodeUriComponent');
const decodedUrl = decode(data.encodedUrl);
if (decodedUrl) {
// ...
}
Syntaxe
decodeUriComponent(encoded_uri_component)
Paramètres
Paramètre | Type | Description |
---|---|---|
encoded_uri_component |
chaîne | Un composant d'URI encodé
encodeUriComponent()
ou par d'autres moyens. |
Autorisations associées
Aucun
encodeUri
Renvoie un URI (Uniform Resource Identifier) encodé en échappant les codes
caractères. Renvoie une chaîne qui représente la chaîne fournie encodée sous la forme
un URI. Renvoie undefined
lorsqu'il est fourni avec une entrée non valide (substitution unique).
Exemple :
sendPixel('https://www.example.com/' + encodeUri(pathInput));
Syntaxe
encodeUri(uri)
Paramètres
Paramètre | Type | Description |
---|---|---|
uri |
chaîne | URI complet. |
Autorisations associées
Aucun
encodeUriComponent
Renvoie un URI (Uniform Resource Identifier) encodé en échappant les codes
caractères. Renvoie une chaîne qui représente la chaîne fournie encodée sous la forme
un URI. Renvoie undefined
lorsqu'il est fourni avec une entrée non valide (substitution unique).
Exemple :
sendPixel('https://www.example.com/?' + encodeUriComponent(queryInput));
Syntaxe
encodeUriComponent(str)
Paramètres
Paramètre | Type | Description |
---|---|---|
str |
chaîne | Composant d'un URI. |
Autorisations associées
Aucun
fromBase64
L'API fromBase64
vous permet de décoder des chaînes en base64
représentation. Renvoie undefined
si une entrée non valide est fournie.
Syntaxe
fromBase64(base64EncodedString)
Paramètres
Paramètre | Type | Description |
---|---|---|
base64EncodedString |
chaîne | Chaîne encodée en base64. |
Exemple
const fromBase64 = require('fromBase64');
const greeting = fromBase64('aGVsbG8=');
if (greeting === 'hello') {
// ...
}
Autorisations associées
Aucun
generateRandom
Renvoie un nombre (entier) aléatoire compris dans la plage donnée.
Syntaxe
generateRandom(min, max)
Paramètres
Paramètre | Type | Description |
---|---|---|
min |
nombre | Valeur potentielle minimale de l'entier renvoyé. |
max |
nombre | Valeur potentielle maximale de l'entier renvoyé. |
Autorisations associées
Aucun
getContainerVersion
Renvoie un objet contenant des données sur le conteneur actuel. La valeur renvoyée comporte les champs suivants:
{
containerId: string,
debugMode: boolean,
environmentName: string,
environmentMode: boolean,
previewMode: boolean,
version: string,
}
Exemple
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);
}
}
Syntaxe
getContainerVersion();
Autorisations associées
getCookieValues
Renvoie les valeurs de tous les cookies portant le nom donné.
Syntaxe
getCookieValues(name[, decode])
Paramètres
Paramètre | Type | Description |
---|---|---|
name |
chaîne | Nom du cookie. |
decode |
booléen | Détermine si les valeurs des cookies doivent être décodées avec
Les scripts JavaScript
<ph type="x-smartling-placeholder"></ph>
decodeURIComponent() . La valeur par défaut est true . |
Autorisations associées
getQueryParameters
Renvoie le premier ou l'ensemble des paramètres du paramètre queryKey
de l'URL actuelle.
Renvoie la première valeur de l'queryKey
ou un tableau de valeurs du
queryKey
Syntaxe
getQueryParameters(queryKey[, retrieveAll])
Paramètres
Paramètre | Type | Description |
---|---|---|
queryKey |
chaîne | Clé à lire à partir des paramètres de requête. |
retrieveAll |
booléen | Indique si toutes les valeurs doivent être récupérées. |
Par exemple, si l'URL actuelle est
https://example.com/path?var=foo&var1=foo1&var=foo2&var=foo
, puis:
getQueryParameters('var') == 'foo'
getQueryParameters('var', false) == 'foo'
getQueryParameters('var', null) == 'foo'
getQueryParameters('var', true) == ['foo', 'foo2', 'foo']
Autorisations associées
get_url
doit autoriser le composant query
et doit spécifier queryKey
dans
les clés de requête autorisées (ou autoriser n'importe quelle clé de requête) ;
getReferrerQueryParameters
L'API getReferrerQueryParameters
se comporte de la même manière que getQueryParameters
,
sauf qu'il agit sur l'URL de provenance et non sur l'URL actuelle. Renvoie la première ou
tous les paramètres pour l'élément queryKey
de l'URL de provenance donnée. Renvoie la première
valeur de queryKey
ou un tableau de valeurs de queryKey
.
Syntaxe
getReferrerQueryParameters(queryKey[, retrieveAll])
Paramètres
Paramètre | Type | Description |
---|---|---|
queryKey |
chaîne | Clé à lire à partir des paramètres de requête. |
retrieveAll |
booléen | Indique si toutes les valeurs doivent être récupérées. |
Par exemple, si l'URL de provenance est
https://example.com/path?var=foo&var1=foo1&var=foo2&var=foo
, puis:
getReferrerQueryParameters('var') == 'foo'
getReferrerQueryParameters('var', false) == 'foo'
getReferrerQueryParameters('var', null) == 'foo'
getReferrerQueryParameters('var', true) == ['foo', 'foo2', 'foo']
Autorisations associées
get_referrer
doit autoriser le composant query
et doit spécifier le
queryKey
dans les clés de requête autorisées (ou autoriser n'importe quelle clé de requête)
getReferrerUrl
Pour un type de composant donné, l'API lit l'objet document correspondant à l'URL de provenance. renvoie une chaîne représentant une partie de l'URL de provenance. Si aucun composant n'est l'URL de provenance complète est renvoyée.
Syntaxe
getReferrerUrl([component])
Paramètres
Paramètre | Type | Description |
---|---|---|
component |
chaîne | Composant à renvoyer à partir de l'URL. Les valeurs possibles sont les suivantes:
protocol , host , port
path , query et extension . Si
component est undefined , null ou
ne correspond pas à l'un de ces éléments, l'URL complète sera
renvoyé. |
Autorisations associées
get_referrer
doit autoriser le composant query
et doit spécifier le
queryKey
dans les clés de requête autorisées (ou autoriser n'importe quelle clé de requête)
getTimestamp
Obsolète. Optez pour getTimestampMillis.
Affiche un nombre qui représente l'heure actuelle en millisecondes depuis Unix.
epoch, telle que renvoyée par Date.now()
.
Syntaxe
getTimestamp();
Autorisations associées
Aucun
getTimestampMillis
Affiche un nombre qui représente l'heure actuelle en millisecondes depuis Unix.
epoch, telle que renvoyée par Date.now()
.
Syntaxe
getTimestampMillis();
Autorisations associées
Aucun
getType
Renvoie une chaîne décrivant le type de la valeur donnée. Contrairement à typeof
,
getType
fait la différence entre array
et object
.
Syntaxe
getType(data.someField)
Remarques
Le tableau suivant répertorie les chaînes renvoyées pour chaque valeur d'entrée.
Valeur d'entrée | Résultat |
---|---|
undefined |
"undefined" |
null |
"null" |
true |
"booléen" |
12 |
"number" |
'string' |
'chaîne' |
{ a: 3 } |
"object" (objet) |
[ 1, 3 ] |
"array" (tableau) |
(x) => x + 1 |
"function" |
Autorisations associées
Aucun
getUrl
Renvoie une chaîne qui représente une partie ou l'intégralité de l'URL actuelle, selon la valeur un type de composant et des paramètres de configuration.
Syntaxe
getUrl(component)
Paramètres
Paramètre | Type | Description |
---|---|---|
component |
chaîne | Composant à renvoyer à partir de l'URL. Doit être l'un des suivants:
protocol , host , port
path , query , extension
fragment Si le composant est undefined ,
null ou ne correspond pas à l'un de ces composants, le
La valeur href complète est renvoyée. |
Autorisations associées
gtagSet
Transfère une commande gtag set à la couche de données, pour qu'elle soit traitée dès que possible après l'exécution de l'événement actuel et des éventuelles balises déclenchées (ou le délai de traitement des tags est atteint). La mise à jour est garantie à traiter dans ce conteneur avant tout élément en file d'attente dans la couche de données file d'attente.
Par exemple, s'il est appelé par une balise déclenchée lors de l'initialisation du consentement,
est appliquée avant le traitement de l'événement d'initialisation. Exemples
ads_data_redaction
serait défini sur true
, false
ou url_passthrough
définie sur true
ou false
.
Exemples :
const gtagSet = require('gtagSet');
gtagSet({
'ads_data_redaction': true,
'url_passthrough': true,
});
Syntaxe
gtagSet(object)
Paramètres
Paramètre | Type | Description |
---|---|---|
Object |
objet | Objet qui met à jour l'état global des propriétés qu'il contient. |
Autorisations associées
write_data_layer
vérifie l'autorisation d'écriture pour dataLayer
pour tous
les clés spécifiées. Si l'entrée dans gtagSet
est un objet brut, l'API vérifie
pour l'autorisation d'écriture sur toutes les clés aplaties contenues dans cet objet, par exemple pour
gtagSet({foo: {bar: 'baz'}})
, l'API recherche l'accès en écriture
autorisation d'accéder à foo.bar
.
Si l'entrée de gtagSet
est une clé et une valeur d'objet non simple, l'API
vérifier l'autorisation d'écriture sur cette clé, par exemple pour gtagSet('abc', true)
,
l'API vérifiera l'autorisation d'écriture pour 'abc'
.
Notez que s'il y a un cycle dans l'objet d'entrée, seules les touches avant d'atteindre la même objet est vérifié.
injectHiddenIframe
Ajoute un iFrame invisible à la page.
Les rappels sont fournis en tant qu'instances de fonction et sont encapsulés en JavaScript. les fonctions qui les appellent.
Syntaxe
injectHiddenIframe(url, onSuccess)
Paramètres
Paramètre | Type | Description |
---|---|---|
url |
chaîne | URL à utiliser comme valeur de l'attribut src de l'iFrame
. |
onSuccess |
function | Appelé lorsque le frame se charge correctement. |
Autorisations associées
injectScript
Ajoute un tag de script à la page pour charger l'URL donnée de manière asynchrone. La Les rappels sont fournis en tant qu'instances de fonction et sont encapsulés en JavaScript. les fonctions qui les appellent.
Syntaxe
injectScript(url, onSuccess, onFailure[, cacheToken])
Paramètres
Paramètre | Type | Description |
---|---|---|
url |
chaîne | Adresse du script à injecter. |
onSuccess |
function | Appelée lorsque le script se charge correctement. |
onFailure |
function | Appelé lorsque le chargement du script échoue. |
cacheToken |
chaîne | Chaîne facultative permettant d'indiquer que l'URL donnée doit être mise en cache. Si
cette valeur est spécifiée, un seul élément de script sera créé pour
demander le code JavaScript. Toute nouvelle tentative de chargement entraînera
les méthodes onSuccess et onFailure données ;
mis en file d'attente jusqu'au chargement du script. |
Autorisations associées
isConsentGranted
Renvoie la valeur "true" si le type de consentement spécifié est accordé.
Le consentement pour un type de consentement particulier est considéré comme accordé Le type a été défini sur "accordé" ou pas du tout définies. Si le type de consentement est défini sur et toute autre valeur qui sera considérée comme non accordée.
Dans l'interface utilisateur de Tag Manager pour les paramètres des balises, vous pourrez toujours
l'incendie. Si une balise avec le paramètre "Toujours activé" utilise cette API, le consentement est pris en compte
accordé, et true
est renvoyé, quel que soit l'état réel du consentement.
Exemple :
const isConsentGranted = require('isConsentGranted');
if (isConsentGranted('ad_storage')) {
sendFullPixel();
} else {
sendPixelWithoutCookies();
}
Syntaxe
isConsentGranted(consentType)
Paramètres
Paramètre | Type | Description |
---|---|---|
consentType |
chaîne | Type de consentement dont l'état doit être vérifié. |
Autorisations associées
Autorisation access_consent
avec accès en lecture pour le type de consentement.
JSON
Renvoie un objet qui fournit des fonctions JSON.
La fonction parse()
analyse une chaîne JSON pour construire la valeur ou l'objet.
décrites par la chaîne. Si la valeur ne peut pas être analysée (fichier JSON incorrect, par exemple),
la fonction renvoie undefined
. Si la valeur d'entrée n'est pas une chaîne, le
est convertie en chaîne.
La fonction stringify()
convertit l'entrée en une chaîne JSON. Si la valeur
ne peut pas être analysée (par exemple, l'objet a un cycle), la méthode renvoie
undefined
Syntaxe
JSON.parse(stringInput)
JSON.stringify(value);
Paramètres
JSON.parse
Paramètre | Type | Description |
---|---|---|
stringInput | tous | Valeur à convertir. Si la valeur n'est pas une chaîne, l'entrée sera convertie par coercition en chaîne. |
JSON.stringify
Paramètre | Type | Description |
---|---|---|
valeur | tous | Valeur à convertir. |
Exemple
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
Renvoie un objet avec des méthodes pour accéder au stockage local.
Syntaxe
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);
Autorisations associées
Exemple
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
Enregistre les arguments dans la console du navigateur.
Syntaxe
logToConsole(obj1 [, obj2,... objN])
Paramètres
Paramètre | Type | Description |
---|---|---|
obj1 [, obj2,... objN] |
tous | Arguments |
Autorisations associées
makeInteger
Convertit la valeur donnée en nombre (entier).
Syntaxe
makeInteger(value)
Paramètres
Paramètre | Type | Description |
---|---|---|
value |
tous | Valeur à convertir. |
Autorisations associées
Aucun
makeNumber
Convertit la valeur donnée en nombre.
Syntaxe
makeNumber(value)
Paramètres
Paramètre | Type | Description |
---|---|---|
value |
tous | Valeur à convertir. |
Autorisations associées
Aucun
makeString
Renvoie la valeur donnée sous forme de chaîne.
Syntaxe
makeString(value)
Paramètres
Paramètre | Type | Description |
---|---|---|
value |
tous | Valeur à convertir. |
Autorisations associées
Aucun
makeTableMap
Convertit un objet de table simple comportant deux colonnes en Map
. Ceci est utilisé pour
modifier un champ de modèle SIMPLE_TABLE
avec deux colonnes pour en faire un champ plus facile à gérer
.
Par exemple, cette fonction peut convertir un objet de table:
[
{'key': 'k1', 'value': 'v1'},
{'key': 'k2', 'value': 'v2'}
]
dans une carte:
{
'k1': 'v1',
'k2': 'v2'
}
Renvoie un objet: la valeur Map
convertie si des paires clé/valeur ont été ajoutées à
ou null
dans le cas contraire.
Syntaxe
makeTableMap(tableObj, keyColumnName, valueColumnName)
Paramètres
Paramètre | Type | Description |
---|---|---|
tableObj |
Liste | Objet table à convertir. Il s'agit d'une liste de cartes où chaque
Map représente une ligne du tableau. Chaque nom de propriété
est le nom de la colonne et la valeur de la propriété est la colonne
dans la ligne. |
keyColumnName |
chaîne | Nom de la colonne dont les valeurs deviendront des clés dans la colonne
Map |
valueColumnName |
chaîne | Nom de la colonne dont les valeurs deviendront des valeurs dans la colonne
Map |
Autorisations associées
Aucun
Math
Objet fournissant des fonctions Math
.
Syntaxe
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);
Paramètres
Les paramètres des fonctions mathématiques sont convertis en nombres.
Autorisations associées
Aucun
Object
Renvoie un objet qui fournit des méthodes Object
.
La méthode keys()
fournit la méthode Object.keys() de la bibliothèque standard
comportemental. Elle renvoie un tableau contenant la propre propriété d'énumération d'un objet donné.
dans le même ordre qu'une boucle for...in...
. Si la valeur d'entrée est
pas un objet, il sera forcé à être un objet.
La méthode values()
fournit la méthode Object.values() de la bibliothèque standard
comportemental. Elle renvoie un tableau contenant les propres valeurs de propriété énumérables d'un objet donné.
dans le même ordre qu'une boucle for...in...
. Si la valeur d'entrée n'est pas
il sera forcé à devenir un objet.
La méthode entries()
fournit la méthode Object.entries() de la bibliothèque standard
comportemental. Elle renvoie un tableau contenant la propre propriété d'énumération d'un objet donné.
Paires [key, value]
dans le même ordre qu'une boucle for...in...
. Si le
valeur d'entrée n'est pas un objet, elle sera forcée en un objet.
La méthode freeze()
fournit la méthode Object.freeze() de la bibliothèque standard
comportemental. Un objet figé ne peut plus être modifié. le gel d'un objet empêche
d'y ajouter de nouvelles propriétés, de supprimer des propriétés existantes,
et les valeurs des propriétés existantes. freeze()
renvoie la
même objet qui a été transmis. Un argument primitif ou nul est traité comme
s'il s'agissait d'un objet figé, et est renvoyé.
La méthode delete()
fournit l'opérateur de suppression de la bibliothèque standard.
comportemental. Elle supprime la clé donnée de l'objet, sauf si celui-ci est figé.
Comme l'opérateur de suppression de la bibliothèque standard, il renvoie true
si la première entrée
(objectInput
) est un objet qui n'est pas figé, même si la deuxième entrée
value (keyToDelete
) spécifie une clé qui n'existe pas. Elle renvoie false
dans
dans tous les autres cas. Toutefois, il diffère de l'opérateur de suppression de la bibliothèque standard
comme suit:
keyToDelete
ne peut pas être une chaîne délimitée par un point spécifiant une clé imbriquée.delete()
ne peut pas être utilisé pour supprimer des éléments d'un tableau.delete()
ne peut pas être utilisé pour supprimer des propriétés du champ d'application global.
Syntaxe
Object.keys(objectInput)
Object.values(objectInput)
Object.entries(objectInput)
Object.freeze(objectInput)
Object.delete(objectInput, keyToDelete)
Paramètres
Object.keys
Paramètre | Type | Description |
---|---|---|
objectInput | tous | Objet dont les clés doivent être énumérées. Si l'entrée n'est pas un objet, elle sera forcée à devenir un objet. |
Object.values
Paramètre | Type | Description |
---|---|---|
objectInput | tous | Objet dont les valeurs à énumérer. Si l'entrée n'est pas un objet, il est forcé en objet. |
Object.entries
Paramètre | Type | Description |
---|---|---|
objectInput | tous | Objet dont les paires clé/valeur doivent être énumérées. Si l'entrée n'est pas il sera forcé à devenir un objet. |
Object.freeze
Paramètre | Type | Description |
---|---|---|
objectInput | tous | Objet à figer. Si l'entrée n'est pas un objet, il sera traité comme un objet figé. |
Object.delete
Paramètre | Type | Description |
---|---|---|
objectInput | tous | Objet dont la clé doit être supprimée. |
keyToDelete | chaîne | Clé de niveau supérieur à supprimer. |
Exemple
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
Renvoie un objet contenant toutes les parties d'une URL donnée, semblable à
l'objet URL
.
Cette API renvoie undefined
pour toutes les URL dont le format est incorrect. Pour un format correct
URL, les champs non présents dans la chaîne d'URL auront pour valeur une chaîne vide,
ou, dans le cas de searchParams
, un objet vide.
L'objet renvoyé comporte les champs suivants:
{
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,
}
Exemple
const parseUrl = require('parseUrl');
const urlObject = parseUrl('https://abc:xyz@example.com:8080/foo?param=val%2Cue#bar');
Syntaxe
parseUrl(url);
Paramètres
Paramètre | Type | Description |
---|---|---|
url |
chaîne | URL complète qui sera analysée. |
Autorisations associées
Aucun
queryPermission
Interrogez les autorisations autorisées et limitées. Renvoie une valeur booléenne: true
si une
l'autorisation est accordée, false
sinon.
Syntaxe
queryPermission(permission, functionArgs*)
Paramètres
Paramètre | Type | Description |
---|---|---|
permission |
chaîne | Nom de l'autorisation. |
functionArgs |
tous | Les arguments de la fonction varient en fonction de l'autorisation demandée. Voir Arguments de fonction ci-dessous. |
Arguments d'une fonction
sendPixel
, injectScript
, injectHiddenIframe
: deuxième paramètre
doit être une chaîne d'URL.
writeGlobals
, readGlobals
: le deuxième paramètre doit être la clé
écrit ou lu.
readUrl
: aucun argument supplémentaire n'est nécessaire pour déterminer si l'ensemble
peut être lue. Pour demander si un composant donné peut être lu, transmettez la méthode
nom du composant comme deuxième argument:
if (queryPermission('readUrl','port')) {
// read the port
}
Pour vérifier si une clé de requête spécifique est lisible, transmettez-la en tant que Troisième paramètre:
if (queryPermission('readUrl','query','key')) {
getUrlComponent(...);
}
Autorisations associées
Aucun
readCharacterSet
Renvoie la valeur de document.characterSet
.
Syntaxe
readCharacterSet()
Paramètres
Aucun
Autorisations associées
readTitle
Renvoie la valeur de document.title
.
Syntaxe
readTitle()
Paramètres
Aucun
Autorisations associées
require
Importe une fonction intégrée par son nom. Renvoie une fonction ou un objet. qui peut être appelé depuis votre programme. Renvoie undefined lorsque le navigateur n'est pas compatible avec la fonction intégrée.
Syntaxe
require(name)
Paramètres
Paramètre | Type | Description |
---|---|---|
name |
chaîne | Nom de la fonction à importer. |
Exemple
const getUrl = require('getUrl');
const url = getUrl();
Autorisations associées
Aucun
sendPixel
Envoie une requête GET à un point de terminaison d'URL spécifié.
Syntaxe
sendPixel(url, onSuccess, onFailure)
Paramètres
Paramètre | Type | Description |
---|---|---|
url |
chaîne | Où envoyer le pixel. |
onSuccess |
function | Appelé lorsque le chargement du pixel aboutit. Remarque: Même si la demande est envoyé avec succès, les navigateurs peuvent exiger une réponse d'image valide pour pour exécuter onSuccess. |
onFailure |
function | Appelé lorsque le chargement du pixel échoue. Remarque: Même si la demande envoie correctement, onFailure peut s'exécuter si le serveur ne renvoie pas de code une réponse d'image valide. |
Autorisations associées
setCookie
Définit ou supprime le cookie avec le nom, la valeur et les options spécifiés.
Syntaxe
setCookie(name, value[, options, encode])
Paramètres
Paramètre | Type | Description |
---|---|---|
name |
chaîne | Nom du cookie. |
value |
chaîne | Valeur du cookie. |
options |
objet | Spécifie la Domaine, "Chemin", "Expiration", "Max-Age", "Secure" et "SameSite". (voir la section Options ci-dessous). |
encode |
booléen | Détermine si la valeur du cookie doit être encodée avec
Les scripts JavaScript
encodeURIComponent()
La valeur par défaut est true . |
- Domaine:défini par la propriété
options['domain']
, le cas échéant. Définir cette valeur à'auto'
pour essayer d'écrire le cookie en utilisant le domaine le plus large possible en fonction de l'emplacement du document. En cas d'échec, il retentera successivement sous-domaines plus restreints. Si tout cela échoue, il tentera d'écrire le cookie sans domaine. Si aucune valeur n'est définie, cette commande tentera d'écrire le cookie sans domaine spécifié. Remarque: Lorsqu'un cookie sans domaine spécifié est écrit dansdocument.cookie
, le user-agent utilise par défaut le domaine du cookie vers l'hôte de l'emplacement actuel du document. - Chemin:défini par
options['path']
, le cas échéant. Lorsqu'un cookie sans chemin d'accès spécifiée est écrite dansdocument.cookie
, le user-agent définit par défaut le chemin d'accès du cookie à l'emplacement actuel du document. - Max-Age:défini par
options['max-age']
, le cas échéant. - Expiration:définie par
options['expires']
, le cas échéant. S'il est présent, il doit être une chaîne de date au format UTC.Date.toUTCString()
permet de formater unDate
pour ce paramètre. - Sécurisé:défini par
options['secure']
, le cas échéant. - SameSite:défini par
options['samesite']
, le cas échéant.
Autorisations associées
setDefaultConsentState
Transfère une mise à jour du consentement par défaut à la couche de données, à traiter dès que possible après l'exécution de l'événement actuel et des éventuelles balises déclenchées (ou le délai de traitement des tags est atteint). La mise à jour est garantie à traiter dans ce conteneur avant tout élément en file d'attente dans la couche de données. En savoir plus sur le consentement
Exemple :
const setDefaultConsentState = require('setDefaultConsentState');
setDefaultConsentState({
'ad_storage': 'denied',
'analytics_storage': 'granted',
'third_party_storage': 'denied',
'region': ['US-CA'],
'wait_for_update': 500
});
Syntaxe
setDefaultConsentState(consentSettings)
Paramètres
Paramètre | Type | Description |
---|---|---|
consentSettings |
objet | Un objet qui définit l'état par défaut du consentement spécifié de données. |
L'objet consentSettings
est un mappage de chaînes de type de consentement arbitraires
au choix : 'granted'
ou 'denied'
. Il accepte les valeurs suivantes:
Nom de la clé | Type | Description |
---|---|---|
consentType |
chaîne | La valeur de chaque type de consentement peut être définie sur "accordé" ou "refusé". Toute valeur autre que "accordé" est traitée comme "refusée". Paramètre la valeur "undefined" n'aura pas d'effet sur sa valeur précédente. |
region |
Array | Tableau facultatif de codes de région spécifiant la région dans laquelle s'appliquent aux paramètres de consentement. Les codes de région sont exprimés à l'aide de pays et/ou de subdivisions au format ISO 3166-2. |
wait_for_update |
nombre | Spécifie une valeur en millisecondes pour contrôler le délai d'attente avant que les données ne soient envoyé. Utilisé avec les outils de consentement qui se chargent de manière asynchrone. |
Autorisations associées
Autorisation access_consent
avec accès en écriture pour tous les types de consentement dans
consentSettings.
setInWindow
Définit la valeur donnée dans window
au niveau de la clé donnée. Par défaut, cette méthode
Définissez la valeur dans window
s'il existe déjà une valeur. Définir
overrideExisting
sur true
pour définir la valeur dans window
, quelle que soit la
la présence d'une valeur existante. Renvoie une valeur booléenne: true
si la valeur était
défini avec succès, et false
dans le cas contraire.
Syntaxe
setInWindow(key, value, overrideExisting)
Paramètres
Paramètre | Type | Description |
---|---|---|
key |
chaîne | Clé dans window où placer la valeur. |
value |
* | Valeur à définir dans window . |
overrideExisting |
booléen | L'indicateur indiquant que la valeur doit être définie dans window
qu'il y ait ou non une valeur. |
Autorisations associées
sha256
Calcule le condensé SHA-256 de l'entrée et invoque un rappel avec
condensé encodé en base64, sauf si l'objet options
spécifie une autre
l'encodage de sortie.
Exemple :
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'});
Syntaxe
sha256(input, onSuccess, onFailure = undefined, options = undefined)
Paramètres
Paramètre | Type | Description |
---|---|---|
input |
chaîne | Chaîne pour laquelle calculer le hachage. |
onSuccess |
function | Appelée avec le condensé obtenu, encodé en base64, sauf si
L'objet options spécifie un autre encodage de sortie. |
onFailure |
function | Appelé si une erreur se produit lors du calcul du condensé, ou si le le navigateur n'est pas compatible en natif avec SHA256. Le rappel est appelé avec un objet contenant le nom de l'erreur et le message. |
options |
objet | Facultatif. Objet d'options permettant de spécifier l'encodage de sortie. Si
l'objet doit contenir la clé outputEncoding
dont la valeur est base64 ou hex . |
Autorisations associées
Aucun
templateStorage
Renvoie un objet avec des méthodes permettant d'accéder au stockage des modèles. Modèle le stockage permet de partager des données entre les exécutions d'un même modèle. Données sont conservés pendant toute la durée de vie de la page.
Syntaxe
const templateStorage = require('templateStorage');
templateStorage.getItem(key);
templateStorage.setItem(key, value);
templateStorage.removeItem(key);
// Deletes all stored values for the template.
templateStorage.clear();
Autorisations associées
Exemple
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
L'API toBase64
vous permet d'encoder une chaîne dans une représentation en base64.
Syntaxe
toBase64(input)
Paramètres
Paramètre | Type | Description |
---|---|---|
input |
chaîne | Chaîne à encoder. |
Exemple
const toBase64 = require('toBase64');
const base64Hello = toBase64('hello');
Autorisations associées
Aucun
updateConsentState
Transfère une mise à jour du consentement à la couche de données, pour qu'elle soit traitée dès que possible après l'événement en cours et le traitement des éventuelles balises déclenchées (ou le délai avant expiration du traitement des tags est atteint). La mise à jour est garantie traités dans ce conteneur avant les éléments en file d'attente dans la couche de données. En savoir plus sur le consentement.
Exemple :
const updateConsentState = require('updateConsentState');
updateConsentState({
'ad_storage': 'granted',
'analytics_storage': 'denied',
'third_party_storage': 'granted',
});
Syntaxe
updateConsentState(consentSettings)
Paramètres
Paramètre | Type | Description |
---|---|---|
consentSettings |
objet | Objet qui met à jour l'état pour les types de consentement spécifiés. |
L'objet consentSettings
est un mappage de chaînes de type de consentement arbitraires
au choix : 'granted'
ou 'denied'
. Il accepte les valeurs suivantes:
Nom de la clé | Type | Description |
---|---|---|
consentType |
chaîne | La valeur de chaque type de consentement peut être définie sur "accordé" ou "refusé". Toute valeur autre que "accordé" est traitée comme "refusée". Paramètre la valeur sur "undefined" n'aura aucun effet sur sa valeur précédente. |
Autorisations associées
Autorisation access_consent
avec accès en écriture pour tous les types de consentement dans
consentSettings.
API de test
Ces API fonctionnent avec des tests JavaScript en bac à sable afin de créer des tests pour les
dans Google Tag Manager. Ces API de test n'ont pas besoin d'un require()
. En savoir plus sur les tests des modèles personnalisés
assertApi
Renvoie un objet de mise en correspondance qui peut être utilisé pour effectuer couramment des assertions sur le une API donnée.
Syntaxe
assertApi(apiName)
Paramètres
Paramètre | Type | Description |
---|---|---|
apiName |
chaîne | Nom de l'API à vérifier. la même chaîne que celle transmise à
require()
|
Outil de mise en correspondance
Subject.wasCalled()
Subject.wasNotCalled()
Subject.wasCalledWith(...expected)
Subject.wasNotCalledWith(...expected)
Exemples
assertApi('sendPixel').wasCalled();
assertApi('getUrl').wasNotCalled();
assertApi('makeNumber').wasCalledWith('8');
assertApi('setInWindow').wasNotCalledWith('myVar', 'theWrongValue');
assertThat
L'API assertThat
est modélisée d'après la bibliothèque [Truth] de Google. Elle renvoie une
qui peut être utilisé pour effectuer couramment des assertions sur la valeur d'un sujet. Une
l'échec d'une assertion arrêtera immédiatement le test et le marquera comme ayant échoué. Toutefois,
l'échec d'un test n'affectera
pas les autres scénarios de test.
Syntaxe
assertThat(actual, opt_message)
Paramètres
Paramètre | Type | Description |
---|---|---|
actual |
tous | Valeur à utiliser dans les vérifications de fluent. |
opt_message |
chaîne | Message facultatif à afficher si l'assertion échoue. |
Outil de mise en correspondance
Matcher | Description |
---|---|
isUndefined() |
Déclare que l'objet est undefined . |
isDefined() |
Déclare que l'objet n'est pas undefined . |
isNull() |
Déclare que l'objet est null . |
isNotNull() |
Déclare que l'objet n'est pas null . |
isFalse() |
Déclare que l'objet est false . |
isTrue() |
Déclare que l'objet est true . |
isFalsy() |
Il affirme que le sujet est faux. Les valeurs erronées sont
undefined , null , false
NaN , 0 et '' (chaîne vide). |
isTruthy() |
Il affirme que le sujet est véridique. Les valeurs erronées sont
undefined , null , false
NaN , 0 et '' (chaîne vide). |
isNaN() |
Déclare que le sujet est la valeur NaN. |
isNotNaN() |
Déclare que le sujet possède une valeur autre que NaN. |
isInfinity() |
Déclarer que le sujet est l'infini positif ou négatif. |
isNotInfinity() |
Déclare que le sujet est une valeur autre que positive ou négative L'infini. |
isEqualTo(expected) |
Déclare que le sujet est égal à la valeur donnée. Il s'agit d'une valeur et non une comparaison de référence. Le contenu des objets et des tableaux sont comparés de manière récursive. |
isNotEqualTo(expected) |
Déclare que le sujet n'est pas égal à la valeur donnée. Il s'agit d'un une comparaison de valeurs, et non une comparaison de référence. Le contenu des objets et les tableaux sont comparés de manière récursive. |
isAnyOf(...expected) |
Déclare que le sujet est égal à l'une des valeurs données. Il s'agit d'un une comparaison de valeurs, et non une comparaison de référence. Le contenu des objets et les tableaux sont comparés de manière récursive. |
isNoneOf(...expected) |
Déclare que le sujet n'est égal à aucune des valeurs données. Ce est une comparaison de valeurs, pas une comparaison de référence. Le contenu des objets et les tableaux sont comparés de manière récursive. |
isStrictlyEqualTo(expected) |
Déclare que le sujet est strictement égal (=== ) à la
une valeur donnée. |
isNotStrictlyEqualTo(expected) |
Déclarer que le sujet n'est pas strictement égal (!== ) à
la valeur donnée. |
isGreaterThan(expected) |
Déclare que le sujet est supérieur à (> ) la valeur donnée
dans une comparaison ordonnée. |
isGreaterThanOrEqualTo(expected) |
Déclare que le sujet est supérieur ou égal à
(>= ) la valeur donnée dans une comparaison ordonnée. |
isLessThan(expected) |
Déclare que le sujet est inférieur à (< ) la valeur donnée
dans une comparaison ordonnée. |
isLessThanOrEqualTo(expected) |
Déclare que le sujet est inférieur ou égal à (<= )
la valeur donnée dans
une comparaison ordonnée. |
contains(...expected) |
Déclare que l'objet est un tableau ou une chaîne contenant tous les éléments les valeurs données dans n'importe quel ordre. Il s'agit d'une comparaison de valeurs et non d'une référence comparaison. Le contenu des objets et des tableaux est comparé de manière récursive. |
doesNotContain(...expected) |
Déclare que l'objet est un tableau ou une chaîne qui ne contient aucune des les valeurs données. Il s'agit d'une comparaison de valeurs, et non d'une comparaison de référence. Le contenu des objets et des tableaux est comparé de manière récursive. |
containsExactly(...expected) |
Déclare que l'objet est un tableau contenant tous les éléments valeurs dans n'importe quel ordre et aucune autre valeur. Il s'agit d'une comparaison de valeurs, et non d'une de référence. Le contenu des objets et des tableaux est comparé de manière récursive. |
doesNotContainExactly(...expected) |
Déclare que le sujet est un tableau contenant un ensemble différent de valeurs à partir des valeurs données, dans n'importe quel ordre. Il s'agit d'une comparaison de valeurs, et non une comparaison de références. Le contenu des objets et des tableaux de manière récursive. |
hasLength(expected) |
Désigne que l'objet est un tableau ou une chaîne de la longueur donnée. L'assertion échoue toujours si la valeur n'est pas un tableau ou une chaîne. |
isEmpty() |
Déclare que l'objet est un tableau ou une chaîne vide (longueur = 0). L'assertion échoue toujours si la valeur n'est pas un tableau ou . |
isNotEmpty() |
Déclarer que l'objet est un tableau ou une chaîne non vide (longueur > 0). L'assertion échoue toujours si la valeur n'est pas un tableau ou une chaîne. |
isArray() |
Déclare que le type du sujet est un tableau. |
isBoolean() |
Désigne que le type du sujet est une valeur booléenne. |
isFunction() |
Déclarer que le type du sujet est une fonction. |
isNumber() |
Déclare que le type du sujet est un nombre. |
isObject() |
Déclarer que le type du sujet est un objet. |
isString() |
Déclare que le type du sujet est une chaîne. |
Exemples
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
L'opération échoue immédiatement au test en cours et imprime le message donné, le cas échéant.
Syntaxe
fail(opt_message);
Paramètres
Paramètre | Type | Description |
---|---|---|
opt_message |
chaîne | Texte du message d'erreur facultatif. |
Exemple
fail('This test has failed.');
mock
L'API mock
vous permet d'ignorer le comportement des API de bac à sable. La simulation
L'API peut être utilisée sans risque dans le code du modèle, mais elle n'est opérationnelle qu'en mode test.
Les simulations sont réinitialisées avant chaque test.
Syntaxe
mock(apiName, returnValue);
Paramètres
Paramètre | Type | Description |
---|---|---|
apiName |
chaîne | Nom de l'API à simuler la même chaîne que celle transmise à
require() |
returnValue |
tous | Valeur à renvoyer pour l'API ou une fonction appelée à la place de
API. Si returnValue est une fonction, celle-ci est appelée dans
l'emplacement de l'API Sandboxed. si returnValue correspond à une autre valeur
qu'une fonction, cette valeur est renvoyée à la place
API. |
Exemples
mock('encodeUri', "https://endpoint.example.com/?account=12345");
mock('sendPixel', function(url, onSuccess, onFailure) {
onSuccess();
});
mockObject
L'API mockObject
vous permet d'ignorer le comportement des API de bac à sable qui
renvoie un objet. L'API peut être utilisée en toute sécurité dans le code du modèle, mais elle est opérationnelle.
qu'en mode test. Les simulations sont réinitialisées avant chaque test.
Syntaxe
mockObject(apiName, objectMock);
Paramètres
Paramètre | Type | Description |
---|---|---|
apiName |
chaîne | Nom de l'API à simuler la même chaîne que celle transmise à
require() |
objectMock |
objet | Valeur à renvoyer pour l'API ou une fonction appelée à la place de API. Doit être un objet. |
Exemples
const storage = {};
mockObject('localStorage', {
setItem: (key, value) => {storage[key] = value;},
getItem: (key) => storage[key],
});
runCode
Exécute le code du modèle, c'est-à-dire le contenu de l'onglet Code, dans l'environnement de test actuel avec un objet de données d'entrée donné.
Syntaxe
runCode(data)
Paramètres
Paramètre | Type | Description |
---|---|---|
data |
objet | Objet de données à utiliser dans le test. |
Valeur renvoyée
Renvoie la valeur d'une variable pour les modèles de variable. renvoie undefined
pour
pour tous les autres types de modèles.
Exemple
runCode({field1: 123, field2: 'value'});