Podstawowe interfejsy API
Te interfejsy API współpracują z JavaScriptem w trybie piaskownicy, aby tworzyć szablony niestandardowe w Google
Menedżer tagów. Każdy interfejs API jest dodawany za pomocą instrukcji require()
, np.
const myAPI = require('myAPI');
addConsentListener
Rejestruje funkcję detektora, która ma być wykonywana, gdy stan określonej zgody zmiany typu.
Dany detektor będzie wywoływany za każdym razem, gdy określony zostanie stan typ zgody zmienia się z „Odrzucono” na „Przyznano” lub z „Przyznano” na „Odrzucono”. Zgoda typ bez stanu jest uznawany za przyznany, więc detektor nie zostanie wywołany, jeśli typ zgody nieskonfigurowanej został zmieniony na „Przyznano”. Funkcje nasłuchiwania będą odpowiedzialne dbanie o to, aby kod był uruchamiany odpowiednią liczbę razy.
Przykład:
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);
});
}
Składnia
addConsentListener(consentType, listener)
Parametry
Parametr | Typ | Opis |
---|---|---|
consentType |
ciąg znaków | Typ zgody, który ma nasłuchiwać zmian stanu. |
listener |
funkcja | Funkcja do uruchomienia w przypadku wystąpienia stanu określonego typu zgody zmian. |
Po wywołaniu detektora przekazywany jest typ zgody a nową wartością tego typu zgody:
Parametr | Typ | Opis |
---|---|---|
consentType |
ciąg znaków | Typ zgody, który zostanie zmieniony. |
granted |
boolean (wartość logiczna). | Wartość logiczna, która ma wartość prawda, jeśli zmienia się określony typ zgody. przyznanych. |
Powiązane uprawnienia
access_consent
z uprawnieniami do odczytu danego typu zgody.
addEventCallback
Interfejs API addEventCallback
umożliwia zarejestrowanie funkcji wywołania zwrotnego, która będzie
zostanie wywołana po zakończeniu zdarzenia. Wywołanie zwrotne jest wywoływane, gdy wszystkie
związane ze zdarzeniem lub po upływie czasu oczekiwania dla zdarzenia na stronie.
Wywołanie zwrotne przekazuje 2 wartości: identyfikator kontenera, który wywołuje metodę
i obiektu z informacjami o zdarzeniu.
Składnia
addEventCallback(callback)
Parametry
Parametr | Typ | Opis |
---|---|---|
callback |
funkcja | Funkcja do wywołania po zakończeniu zdarzenia. |
Obiekt eventData
zawiera te dane:
Nazwa klucza | Typ | Opis |
---|---|---|
tags |
Tablica | Tablica obiektów danych tagów. Wszystkie tagi, które zostały uruchomione podczas zdarzenia
będzie mieć wpis w tej tablicy. Obiekt danych tagu zawiera funkcje
identyfikator tagu (id ), stan jego wykonania
(status ) i czasie wykonywania tej czynności
(executionTime ). Dane z tagu będą też zawierać dodatkowe
skonfigurowanych w tagu. |
Przykład
addEventCallback(function(ctid, eventData) {
logToConsole('Tag count for container ' + ctid + ': ' + eventData['tags'].length);
});
Powiązane uprawnienia
aliasInWindow
Interfejs API aliasInWindow
umożliwia utworzenie aliasu (np. window.foo =
window.bar
), który pomaga obsługiwać określone tagi, które wymagają aliasu. Przypisuje
wartość w obiekcie window
znalezionym w punkcie fromPath
dla klucza w argumencie
window
obiekt w toPath
. Jeśli operacja się udała, zwraca wartość true
: false
w przeciwnym razie.
Składnia
aliasInWindow(toPath, fromPath)
Parametry
Parametr | Typ | Opis |
---|---|---|
toPath |
ciąg znaków | Oddzielona kropkami ścieżka do obiektu window , gdzie wartość
powinny zostać skopiowane. Wszystkie komponenty na ścieżce do ostatniego komponentu
musi już istnieć w obiekcie window . |
fromPath |
ciąg znaków | Rozdzielona kropkami ścieżka prowadząca do wartości window do skopiowania. Jeśli
wartość nie istnieje, operacja zakończy się niepowodzeniem. |
Przykład
aliasInWindow('foo.bar', 'baz.qux')
Powiązane uprawnienia
Parametr access_globals
jest wymagany zarówno dla toPath
, jak i fromPath
; toPath
wymaga uprawnień do zapisu, fromPath
wymaga uprawnień do odczytu.
callInWindow
Umożliwia wywoływanie funkcji ze ścieżki spoza obiektu window
w zasadzie
w bardziej kontrolowany sposób. Wywołuje funkcję w podanej ścieżce w funkcji window
z podanym argumentem
i zwraca wartość. Jeśli zwracanego typu nie można bezpośrednio zmapować
jest typem obsługiwanym w JavaScripcie w trybie piaskownicy, zostanie zwrócony undefined
.
8 typów obsługiwanych w JavaScript w trybie piaskownicy to null
, undefined
,
boolean
, number
, string
, Array
, Object
i function
. Jeśli podana wartość
ścieżka nie istnieje lub nie odwołuje się do funkcji, undefined
zostanie
.
Składnia
callInWindow(pathToFunction, argument [, argument2,... argumentN])
Parametry
Parametr | Typ | Opis |
---|---|---|
pathToFunction |
ciąg znaków | Oddzielona kropkami ścieżka do funkcji w window do
. |
args |
* | Argumenty, które mają być przekazywane do funkcji. |
Powiązane uprawnienia
access_globals
z włączonymi uprawnieniami execute
.
callLater
Planuje asynchroniczne wywołanie funkcji. Funkcja zostanie
po zwróceniu bieżącego kodu. Jest to odpowiednik
setTimeout(<function>, 0)
Składnia
callLater(function)
Parametry
Parametr | Typ | Opis |
---|---|---|
function |
funkcja | Funkcja do wywołania. |
copyFromDataLayer
Zwraca wartość aktualnie przypisaną do danego klucza w warstwie danych:
wartość znaleziona przy danym kluczu, jeśli jest to typ podstawowy, funkcja lub obiekt
literału lub w innym przypadku undefined
.
Składnia
copyFromDataLayer(key[, dataLayerVersion])
Parametry
Parametr | Typ | Opis |
---|---|---|
key |
ciąg znaków | Klucz w formacie „a.b.c”. |
dataLayerVersion |
liczba | Opcjonalne dane wersji warstwy. Wartością domyślną jest 2. Zdecydowanie odradzamy użyj wartości 1. |
Powiązane uprawnienia
copyFromWindow
Kopiuje zmienną z obiektu window
. Jeśli wartość w funkcji window
nie może być
bezpośrednio zmapowane na typ obsługiwany w JavaScript w trybie piaskownicy, undefined
zostanie
. Oto 8 typów obsługiwanych w języku JavaScript w trybie piaskownicy: null
,
undefined
, boolean
, number
, string
, Array
, Object
i function
.
Zwraca pobraną (i przekształconą) wartość.
Składnia
copyFromWindow(key)
Parametry
Parametr | Typ | Opis |
---|---|---|
key |
ciąg znaków | Klucz w obiekcie window , z którego ma zostać skopiowana wartość. |
Powiązane uprawnienia
createArgumentsQueue
Tworzy kolejkę wypełnioną obiektami argumentów, obsługując tag i wymagających rozwiązań.
Tworzy funkcję w zakresie globalnym (tj. window
) przy użyciu argumentu fnKey
(ta sama semantyka co createQueue
). Po utworzeniu funkcji ten interfejs API
tworzy tablicę w funkcji window
(jeśli jeszcze nie istnieje) przy użyciu funkcji arrayKey
.
Gdy wywoływana jest funkcja utworzona pod nagłówkiem fnKey
, przekazuje ona swoje argumenty
na tablicę utworzoną w arrayKey
. Wartością zwrotną interfejsu API jest
utworzonej w funkcji fnKey
.
Ta funkcja wymaga ustawienia odczytu i zapisu w fnKey
i arrayKey
uprawnienia access_globals
.
Przykład:
const gtag = createArgumentsQueue('gtag', 'dataLayer');
gtag('set', {'currency': 'USD'});
Składnia
createArgumentsQueue(fnKey, arrayKey)
Parametry
Parametr | Typ | Opis |
---|---|---|
fnKey |
ciąg znaków | Ścieżka w polu window , w której ustawiona jest funkcja (jeśli występuje).
które jeszcze nie istnieją. Ten argument obsługuje standardowy zapis z kropkami. Jeśli
ścieżka klucza nie istnieje, został zgłoszony wyjątek. Oznacza to, że jeśli
fnKey wynosi 'one.two' i spowoduje wyświetlenie
wyjątek. |
arrayKey |
ciąg znaków | Ścieżka w polu window , w której ustawiona jest tablica (jeśli nie jest ustawiona).
już istnieje. Ten argument obsługuje standardowy zapis z kropkami. Jeśli
ścieżka klucza nie istnieje, został zgłoszony wyjątek. Oznacza to, że jeśli
arrayKey wynosi 'one.two' i nie ma
obiekt globalny o nazwie 'one' spowoduje przesłanie żądania
wyjątek. |
Powiązane uprawnienia
createQueue
Tworzy tablicę w funkcji window
(jeśli jeszcze nie istnieje) i zwraca
która przenosi wartości do tej tablicy.
Ta funkcja wymaga ustawienia odczytu i zapisu dla arrayKey
na
access_globals
.
Przykład:
const dataLayerPush = createQueue('dataLayer');
dataLayerPush({'currency': 'USD'}, {'event': 'myConversion'});
Składnia
createQueue(arrayKey)
Parametry
Parametr | Typ | Opis |
---|---|---|
arrayKey |
ciąg znaków | Klucz w polu window , w którym ustawiona jest tablica (jeśli nie jest ustawiona)
już istnieje. Ten argument obsługuje standardowy zapis z kropkami. Jeśli
ścieżka klucza nie istnieje, został zgłoszony wyjątek. Na przykład, jeśli
arrayKey wynosi 'one.two' i nie ma
obiekt globalny o nazwie 'one' spowoduje przesłanie żądania
wyjątek. |
Powiązane uprawnienia
decodeUri
Dekoduje wszystkie zakodowane znaki w podanym identyfikatorze URI. Zwraca ciąg znaków, który
reprezentuje zdekodowany identyfikator URI. Zwraca wartość undefined
, jeśli podano nieprawidłową
dane wejściowe.
Przykład:
const decode = require('decodeUri');
const decodedUrl = decode(data.encodedUrl);
if (decodedUrl) {
// ...
}
Składnia
decodeUri(encoded_uri)
Parametry
Parametr | Typ | Opis |
---|---|---|
encoded_uri |
ciąg znaków | Identyfikator URI zakodowany przez
encodeUri()
lub w inny sposób. |
Powiązane uprawnienia
Brak.
decodeUriComponent
Dekoduje wszystkie zakodowane znaki w podanym komponencie URI. Zwraca
ciąg znaków reprezentujący zdekodowany komponent identyfikatora URI. Zwraca undefined
, gdy
podano nieprawidłowe dane wejściowe.
Przykład:
const decode = require('decodeUriComponent');
const decodedUrl = decode(data.encodedUrl);
if (decodedUrl) {
// ...
}
Składnia
decodeUriComponent(encoded_uri_component)
Parametry
Parametr | Typ | Opis |
---|---|---|
encoded_uri_component |
ciąg znaków | Komponent URI zakodowany przez
encodeUriComponent()
lub w inny sposób. |
Powiązane uprawnienia
Brak.
encodeUri
Zwraca zakodowany identyfikator URI (Uniform Resource Identifier) przez zmianę znaczenia
znaków. Zwraca ciąg znaków, który reprezentuje podany ciąg znaków zakodowany jako
identyfikator URI. Zwraca undefined
z nieprawidłowymi danymi wejściowymi (samotny zastępnik).
Przykład:
sendPixel('https://www.example.com/' + encodeUri(pathInput));
Składnia
encodeUri(uri)
Parametry
Parametr | Typ | Opis |
---|---|---|
uri |
ciąg znaków | Pełny identyfikator URI. |
Powiązane uprawnienia
Brak.
encodeUriComponent
Zwraca zakodowany identyfikator URI (Uniform Resource Identifier) przez zmianę znaczenia
znaków. Zwraca ciąg znaków, który reprezentuje podany ciąg znaków zakodowany jako
identyfikator URI. Zwraca undefined
z nieprawidłowymi danymi wejściowymi (samotny zastępnik).
Przykład:
sendPixel('https://www.example.com/?' + encodeUriComponent(queryInput));
Składnia
encodeUriComponent(str)
Parametry
Parametr | Typ | Opis |
---|---|---|
str |
ciąg znaków | Składnik identyfikatora URI. |
Powiązane uprawnienia
Brak.
fromBase64
Interfejs API fromBase64
umożliwia dekodowanie ciągów znaków w formacie base64.
reprezentacja. Zwraca undefined
, jeśli podano nieprawidłowe dane wejściowe.
Składnia
fromBase64(base64EncodedString)
Parametry
Parametr | Typ | Opis |
---|---|---|
base64EncodedString |
ciąg znaków | Ciąg znaków zakodowany w standardzie Base64. |
Przykład
const fromBase64 = require('fromBase64');
const greeting = fromBase64('aGVsbG8=');
if (greeting === 'hello') {
// ...
}
Powiązane uprawnienia
Brak
generateRandom
Zwraca losową liczbę (całkowitą) z podanego zakresu.
Składnia
generateRandom(min, max)
Parametry
Parametr | Typ | Opis |
---|---|---|
min |
liczba | Minimalna wartość potencjalna zwróconej liczby całkowitej. |
max |
liczba | Maksymalna wartość potencjalna zwróconej liczby całkowitej. |
Powiązane uprawnienia
Brak.
getContainerVersion
Zwraca obiekt zawierający dane o bieżącym kontenerze. Zwrócone wartości zawiera następujące pola:
{
containerId: string,
debugMode: boolean,
environmentName: string,
environmentMode: boolean,
previewMode: boolean,
version: string,
}
Przykład
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);
}
}
Składnia
getContainerVersion();
Powiązane uprawnienia
getCookieValues
Zwraca wartości wszystkich plików cookie o podanej nazwie.
Składnia
getCookieValues(name[, decode])
Parametry
Parametr | Typ | Opis |
---|---|---|
name |
ciąg znaków | Nazwa pliku cookie. |
decode |
boolean (wartość logiczna). | Określa, czy wartości plików cookie mają być dekodowane za pomocą
JavaScript
decodeURIComponent() Domyślna wartość to
true |
Powiązane uprawnienia
getQueryParameters
Zwraca pierwszy lub wszystkie parametry bieżącego adresu URL (queryKey
).
Zwraca pierwszą wartość z funkcji queryKey
lub tablicy wartości z funkcji
queryKey
Składnia
getQueryParameters(queryKey[, retrieveAll])
Parametry
Parametr | Typ | Opis |
---|---|---|
queryKey |
ciąg znaków | Klucz do odczytu z parametrów zapytania. |
retrieveAll |
boolean (wartość logiczna). | Określa, czy pobrać wszystkie wartości. |
Jeśli na przykład obecny adres URL to
https://example.com/path?var=foo&var1=foo1&var=foo2&var=foo
, a potem:
getQueryParameters('var') == 'foo'
getQueryParameters('var', false) == 'foo'
getQueryParameters('var', null) == 'foo'
getQueryParameters('var', true) == ['foo', 'foo2', 'foo']
Powiązane uprawnienia
get_url
musi zezwalać na komponent query
i określać queryKey
w
dozwolone klucze zapytania (lub dowolny klucz zapytania).
getReferrerQueryParameters
Interfejs API getReferrerQueryParameters
działa tak samo jak getQueryParameters
,
, z wyjątkiem tego, że działa na stronie odsyłającej zamiast w bieżącym adresie URL. Zwraca pierwszą wartość lub
wszystkie parametry queryKey
strony odsyłającej. Zwraca pierwszą wartość
z funkcji queryKey
lub tablicy wartości z funkcji queryKey
.
Składnia
getReferrerQueryParameters(queryKey[, retrieveAll])
Parametry
Parametr | Typ | Opis |
---|---|---|
queryKey |
ciąg znaków | Klucz do odczytu z parametrów zapytania. |
retrieveAll |
boolean (wartość logiczna). | Określa, czy pobrać wszystkie wartości. |
Jeśli na przykład adres URL strony odsyłającej to
https://example.com/path?var=foo&var1=foo1&var=foo2&var=foo
, a potem:
getReferrerQueryParameters('var') == 'foo'
getReferrerQueryParameters('var', false) == 'foo'
getReferrerQueryParameters('var', null) == 'foo'
getReferrerQueryParameters('var', true) == ['foo', 'foo2', 'foo']
Powiązane uprawnienia
get_referrer
musi zezwalać na komponent query
i określać
queryKey
w dozwolonych kluczach zapytania (lub zezwól na dowolny klucz zapytania).
getReferrerUrl
Biorąc pod uwagę typ komponentu, interfejs API odczytuje obiekt dokumentu dla strony odsyłającej i zwraca ciąg znaków, który reprezentuje część strony odsyłającej. Jeśli żaden komponent nie jest zostanie zwrócony pełny adres URL strony odsyłającej.
Składnia
getReferrerUrl([component])
Parametry
Parametr | Typ | Opis |
---|---|---|
component |
ciąg znaków | Komponent do zwrócenia z adresu URL. Dostępne wartości:
protocol , host , port
path , query , extension . Jeśli
component to undefined , null lub
nie pasuje do żadnego z tych komponentów, cały URL zostanie
. |
Powiązane uprawnienia
get_referrer
musi zezwalać na komponent query
i określać
queryKey
w dozwolonych kluczach zapytania (lub zezwól na dowolny klucz zapytania).
getTimestamp
Wycofano. Preferuję parametr getTimestampMillis.
Zwraca liczbę, która reprezentuje (w milisekundach) bieżący czas od momentu systemu Unix
epoki; dane zwrócone przez Date.now()
.
Składnia
getTimestamp();
Powiązane uprawnienia
Brak.
getTimestampMillis
Zwraca liczbę, która reprezentuje (w milisekundach) bieżący czas od momentu systemu Unix
epoki; dane zwrócone przez Date.now()
.
Składnia
getTimestampMillis();
Powiązane uprawnienia
Brak.
getType
Zwraca ciąg znaków opisujący typ danej wartości. W przeciwieństwie do typeof
,
getType
różni się od array
i object
.
Składnia
getType(data.someField)
Notes
Tabela poniżej zawiera listę ciągów zwracanych dla każdej wartości wejściowej.
Wartość wejściowa | Wynik |
---|---|
undefined |
'niezdefiniowane' |
null |
„null” |
true |
„wartość logiczna” |
12 |
„number” |
'string' |
„ciąg znaków” |
{ a: 3 } |
„object” |
[ 1, 3 ] |
„tablica” |
(x) => x + 1 |
„funkcja” |
Powiązane uprawnienia
Brak.
getUrl
Zwraca ciąg znaków, który reprezentuje cały bieżący adres URL lub jego część, podaną typ komponentu i niektóre parametry konfiguracji.
Składnia
getUrl(component)
Parametry
Parametr | Typ | Opis |
---|---|---|
component |
ciąg znaków | Komponent do zwrócenia z adresu URL. Musi to być jedna z tych wartości:
protocol , host , port
path , query , extension ,
fragment Jeśli komponent to undefined ,
null lub nie pasuje do żadnego z tych komponentów,
zostanie zwrócona cała wartość href . |
Powiązane uprawnienia
gtagSet
Przekazuje polecenie zestawu gtag do warstwy danych, aby zostało przetworzone możliwe po zakończeniu bieżącego zdarzenia i wszystkich wywołanych przez niego tagów (lub upłynął limit czasu przetwarzania tagu). Aktualizacja jest gwarantowana do przetworzenia w tym kontenerze przed elementami znajdującymi się w kolejce w warstwie danych kolejkę.
Jeśli np. wywołana przez tag uruchamiany podczas Inicjacji zgody,
aktualizacja zostanie zastosowana przed przetworzeniem zdarzenia Zdarzenie inicjujące. Przykłady
zostanie ustawiona wartość ads_data_redaction
na true
, false
lub url_passthrough
ustawiona na true
lub false
.
Przykłady:
const gtagSet = require('gtagSet');
gtagSet({
'ads_data_redaction': true,
'url_passthrough': true,
});
Składnia
gtagSet(object)
Parametry
Parametr | Typ | Opis |
---|---|---|
Object |
obiekt | Obiekt, który aktualizuje stan globalny właściwości zawierających jego właściwości. |
Powiązane uprawnienia
write_data_layer
sprawdza uprawnienia do zapisu w folderze dataLayer
dla wszystkich
określonych kluczy. Jeśli dane wejściowe funkcji gtagSet
są zwykłym obiektem, interfejs API sprawdzi,
, aby uzyskać uprawnienia do zapisu we wszystkich spłaszczonych kluczach wewnątrz tego obiektu, np. w przypadku
gtagSet({foo: {bar: 'baz'}})
, interfejs API sprawdzi zapis
dostęp do foo.bar
.
Jeśli dane wejściowe funkcji gtagSet
są kluczem i jakąś niezwykłą wartością obiektu, interfejs API
sprawdź uprawnienia do zapisu w tym kluczu, np. dla gtagSet('abc', true)
,
interfejs API sprawdzi uprawnienia do zapisu w: 'abc'
.
Pamiętaj, że jeśli w obiekcie wejściowym występuje cykl, naciskaj klawisze przed tylko ten sam obiekt.
injectHiddenIframe
Dodaje niewidoczny element iframe do strony.
Wywołania zwrotne są podawane jako instancje funkcji i opakowane w kodzie JavaScript które je wywołują.
Składnia
injectHiddenIframe(url, onSuccess)
Parametry
Parametr | Typ | Opis |
---|---|---|
url |
ciąg znaków | Adres URL używany jako wartość elementu src elementu iframe
. |
onSuccess |
funkcja | Wywoływane po załadowaniu ramki. |
Powiązane uprawnienia
injectScript
Dodaje do strony tag skryptu, aby asynchronicznie wczytywać dany adres URL. wywołania zwrotne są podawane jako instancje funkcji i są opakowane w JavaScripcie które je wywołują.
Składnia
injectScript(url, onSuccess, onFailure[, cacheToken])
Parametry
Parametr | Typ | Opis |
---|---|---|
url |
ciąg znaków | Adres skryptu do wstrzykiwania. |
onSuccess |
funkcja | Wywoływana po załadowaniu skryptu. |
onFailure |
funkcja | Wywoływana, gdy nie można wczytać skryptu. |
cacheToken |
ciąg znaków | Opcjonalny ciąg znaków wskazujący, że dany adres URL powinien być zapisany w pamięci podręcznej. Jeśli
jest określona, zostanie utworzony tylko jeden element skryptu,
żądania JavaScript. Wszystkie kolejne próby wczytania danych spowodują, że
podane metody onSuccess i onFailure
w kolejce, dopóki skrypt się nie załaduje. |
Powiązane uprawnienia
isConsentGranted
Zwraca wartość „prawda”, jeśli określony typ zgody został przyznany.
Zgoda w ramach określonego typu zgody jest uznawana za udzieloną, jeśli: typ został ustawiony na „granted”; lub nie jest ustawiona. Jeśli typ zgody jest ustawiony na wszelkie inne wartości, które zostaną uznane za nieprzyznane.
Ustawienia tagów w interfejsie Menedżera tagów zawsze będą
pożaru. Jeśli z tego interfejsu API korzysta tag z włączonym ciągłym uruchamianiem, zgoda jest brana pod uwagę
przyznane i true
zostaną zwrócone, niezależnie od rzeczywistego stanu zgody.
Przykład:
const isConsentGranted = require('isConsentGranted');
if (isConsentGranted('ad_storage')) {
sendFullPixel();
} else {
sendPixelWithoutCookies();
}
Składnia
isConsentGranted(consentType)
Parametry
Parametr | Typ | Opis |
---|---|---|
consentType |
ciąg znaków | Typ zgody, którego stan chcesz sprawdzić. |
Powiązane uprawnienia
access_consent
z uprawnieniami do odczytu danego typu zgody.
JSON
Zwraca obiekt, który udostępnia funkcje JSON.
Funkcja parse()
analizuje ciąg znaków JSON, aby utworzyć wartość lub obiekt
opisanego ciągiem. Jeśli nie można przeanalizować wartości (np. ma nieprawidłowy format JSON),
funkcja zwróci undefined
. Jeśli wartość wejściowa nie jest ciągiem, funkcja
dane wejściowe zostaną przekształcone w ciąg znaków.
Funkcja stringify()
przekształca dane wejściowe na ciąg znaków JSON. Jeśli wartość
nie można przeanalizować (np. obiekt ma cykl), metoda zwróci
undefined
Składnia
JSON.parse(stringInput)
JSON.stringify(value);
Parametry
JSON.parse
Parametr | Typ | Opis |
---|---|---|
stringInput | dowolny | Wartość do przekonwertowania. Jeśli wartość nie jest ciągiem, dane wejściowe zostaną w postaci struny. |
JSON.stringify
Parametr | Typ | Opis |
---|---|---|
wartość | dowolny | Wartość do przekonwertowania. |
Przykład
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
Zwraca obiekt z metodami dostępu do pamięci lokalnej.
Składnia
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);
Powiązane uprawnienia
Przykład
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
Loguje argumenty w konsoli przeglądarki.
Składnia
logToConsole(obj1 [, obj2,... objN])
Parametry
Parametr | Typ | Opis |
---|---|---|
obj1 [, obj2,... objN] |
dowolny | Argumenty |
Powiązane uprawnienia
makeInteger
Konwertuje podaną wartość na liczbę (całkowitą).
Składnia
makeInteger(value)
Parametry
Parametr | Typ | Opis |
---|---|---|
value |
dowolny | Wartość do przekonwertowania. |
Powiązane uprawnienia
Brak.
makeNumber
Konwertuje podaną wartość na liczbę.
Składnia
makeNumber(value)
Parametry
Parametr | Typ | Opis |
---|---|---|
value |
dowolny | Wartość do przekonwertowania. |
Powiązane uprawnienia
Brak.
makeString
Zwraca podaną wartość jako ciąg znaków.
Składnia
makeString(value)
Parametry
Parametr | Typ | Opis |
---|---|---|
value |
dowolny | Wartość do przekonwertowania. |
Powiązane uprawnienia
Brak.
makeTableMap
Konwertuje prosty obiekt tabeli z 2 kolumnami na Map
. Zastosowanie:
zmienić pole szablonu SIMPLE_TABLE
z 2 kolumnami na łatwiejsze do zarządzania
.
Ta funkcja może na przykład przekonwertować obiekt tabeli:
[
{'key': 'k1', 'value': 'v1'},
{'key': 'k2', 'value': 'v2'}
]
na mapę:
{
'k1': 'v1',
'k2': 'v2'
}
Zwraca Object: przekonwertowana wartość Map
, jeśli pary klucz-wartość zostały dodane do
go lub null
w inny sposób.
Składnia
makeTableMap(tableObj, keyColumnName, valueColumnName)
Parametry
Parametr | Typ | Opis |
---|---|---|
tableObj |
Wyświetl listę | Obiekt tabeli do przekonwertowania. To lista map, z których każda
Map oznacza wiersz w tabeli. Każda nazwa właściwości w
obiektem wiersza jest nazwa kolumny, a wartością właściwości jest kolumna.
w wierszu. |
keyColumnName |
ciąg znaków | Nazwa kolumny, której wartości będą kluczami w skonwertowanej wartości
Map |
valueColumnName |
ciąg znaków | Nazwa kolumny, której wartości staną się wartościami w kolumnie po przekonwertowaniu
Map |
Powiązane uprawnienia
Brak.
Math
Obiekt udostępniający funkcje Math
.
Składnia
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);
Parametry
Parametry funkcji matematycznych są konwertowane na liczby.
Powiązane uprawnienia
Brak.
Object
Zwraca obiekt, który udostępnia metody Object
.
Metoda keys()
udostępnia funkcję Object.keys() biblioteki standardowej
zachowanie użytkownika. Zwraca tablicę własnej wyliczanej właściwości danego obiektu
nazwy w tej samej kolejności, w jakiej byłaby pętla for...in...
. Jeśli wartością wejściową jest
zostanie on przekształcony w obiekt.
Metoda values()
udostępnia funkcję Object.values() w Bibliotece standardowej
zachowanie użytkownika. Zwraca tablicę wartości właściwości wyliczanych danego obiektu
w tej samej kolejności, w jakiej byłaby pętla for...in...
. Jeśli wartością wejściową jest
zostanie on przekształcony w obiekt.
Metoda entries()
udostępnia funkcję Object.entries() w bibliotece standardowej
zachowanie użytkownika. Zwraca tablicę własnej wyliczanej właściwości danego obiektu
[key, value]
pary w tej samej kolejności, w jakiej byłaby pętla for...in...
. Jeśli
Wartość wejściowa nie jest obiektem, zostanie przekształcona w obiekt.
Metoda freeze()
udostępnia funkcję Object.freeze() w bibliotece standardowej
zachowanie użytkownika. Zablokowanego obiektu nie można już zmienić; blokowanie obiektu zapobiega
dodawania do niej nowych usług, usuwania dotychczasowych usług,
oraz wartości istniejących właściwości. freeze()
zwraca błąd
dany obiekt. Argument podstawowy lub pusty będzie traktowany jako
i zostanie zwrócony.
Metoda delete()
udostępnia operator usuwania w Bibliotece standardowej.
zachowanie użytkownika. Usuwa podany klucz z obiektu, chyba że obiekt zostanie zablokowany.
Podobnie jak operator usuwania biblioteki standardowej, zwraca true
, jeśli pierwsze dane wejściowe
wartość (objectInput
) jest obiektem, który nie jest zablokowany, nawet jeśli drugie dane wejściowe
(keyToDelete
) wskazuje klucz, który nie istnieje. Zwraca false
w:
we wszystkich innych przypadkach. Różni się jednak od operatora usuwania w bibliotece standardowej.
w następujący sposób:
keyToDelete
nie może być ciągiem rozdzielanym kropkami, który określa zagnieżdżony klucz.- Nie można użyć funkcji
delete()
do usunięcia elementów z tablicy. - Za pomocą funkcji
delete()
nie można usuwać żadnych właściwości z zakresu globalnego.
Składnia
Object.keys(objectInput)
Object.values(objectInput)
Object.entries(objectInput)
Object.freeze(objectInput)
Object.delete(objectInput, keyToDelete)
Parametry
Object.keys
Parametr | Typ | Opis |
---|---|---|
objectInput | dowolny | Obiekt, którego klucze do wyliczenia. Jeśli dane wejściowe nie są obiektem, zostanie przekształcony w obiekt. |
Object.values
Parametr | Typ | Opis |
---|---|---|
objectInput | dowolny | Obiekt, którego wartości do wyliczenia. Jeśli dane wejściowe nie są obiektem, zostanie on przekształcony w obiekt. |
Object.entries
Parametr | Typ | Opis |
---|---|---|
objectInput | dowolny | Obiekt, którego pary klucz/wartość do wyliczenia. Jeśli dane wejściowe nie są zostanie on przekształcony w obiekt. |
Object.freeze
Parametr | Typ | Opis |
---|---|---|
objectInput | dowolny | Obiekt do zablokowania. Jeśli dane wejściowe nie są obiektem, zostanie potraktowany jako zablokowany obiekt. |
Object.delete
Parametr | Typ | Opis |
---|---|---|
objectInput | dowolny | Obiekt, którego klucz do usunięcia. |
keyToDelete | ciąg znaków | Klucz najwyższego poziomu do usunięcia. |
Przykład
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
Zwraca obiekt, który zawiera wszystkie części składowe danego adresu URL, podobnie jak
obiekt URL
.
Ten interfejs API zwróci kod undefined
w przypadku każdego nieprawidłowego adresu URL. Prawidłowo sformatowany
W adresach URL lub w polach, których nie ma w ciągu adresu URL, wartość będzie pusta,
a w przypadku searchParams
– pusty obiekt.
Zwrócony obiekt będzie zawierał te pola:
{
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,
}
Przykład
const parseUrl = require('parseUrl');
const urlObject = parseUrl('https://abc:xyz@example.com:8080/foo?param=val%2Cue#bar');
Składnia
parseUrl(url);
Parametry
Parametr | Typ | Opis |
---|---|---|
url |
ciąg znaków | Pełny adres URL do analizy. |
Powiązane uprawnienia
Brak.
queryPermission
Wyślij zapytanie dotyczące dozwolonych i zawężonych uprawnień. Zwraca wartość logiczną: true
, jeśli
przyznane uprawnienie. W przeciwnym razie false
.
Składnia
queryPermission(permission, functionArgs*)
Parametry
Parametr | Typ | Opis |
---|---|---|
permission |
ciąg znaków | Nazwa uprawnienia. |
functionArgs |
dowolny | Argumenty funkcji różnią się w zależności od uprawnienia, którego dotyczy zapytanie. Zobacz Argumenty funkcji poniżej. |
Argumenty funkcji
sendPixel
, injectScript
, injectHiddenIframe
: drugi parametr
powinien być ciągiem adresu URL.
writeGlobals
, readGlobals
: drugim parametrem powinien być klucz
zapisane lub przeczytane.
readUrl
: nie są potrzebne żadne dodatkowe argumenty do sprawdzenia, czy cała
Adres URL może zostać odczytany. Aby sprawdzić, czy dany komponent może być odczytywany, przekaż
jako drugiego argumentu:
if (queryPermission('readUrl','port')) {
// read the port
}
Aby sprawdzić, czy konkretny klucz zapytania jest czytelny, przekaż go jako trzeci parametr:
if (queryPermission('readUrl','query','key')) {
getUrlComponent(...);
}
Powiązane uprawnienia
Brak.
readCharacterSet
Zwraca wartość zmiennej document.characterSet
.
Składnia
readCharacterSet()
Parametry
Brak.
Powiązane uprawnienia
readTitle
Zwraca wartość zmiennej document.title
.
Składnia
readTitle()
Parametry
Brak.
Powiązane uprawnienia
require
Importuje funkcję wbudowaną według nazwy. Zwraca funkcję lub obiekt które można wywołać z programu. Zwraca wartość undefined, gdy przeglądarka nie obsługuje wbudowanej funkcji.
Składnia
require(name)
Parametry
Parametr | Typ | Opis |
---|---|---|
name |
ciąg znaków | Nazwa funkcji do zaimportowania. |
Przykład
const getUrl = require('getUrl');
const url = getUrl();
Powiązane uprawnienia
Brak.
sendPixel
Wysyłam żądanie GET do określonego punktu końcowego adresu URL.
Składnia
sendPixel(url, onSuccess, onFailure)
Parametry
Parametr | Typ | Opis |
---|---|---|
url |
ciąg znaków | Dokąd wysłać piksel. |
onSuccess |
funkcja | Wywoływane po załadowaniu piksela. Uwaga: nawet jeśli żądanie poprawnie wysyła, przeglądarki mogą wymagać prawidłowej odpowiedzi graficznej w celu aby kierować reklamy do Sukcesów. |
onFailure |
funkcja | Wywoływane, gdy nie uda się załadować piksela. Uwaga: nawet jeśli żądanie może wysłać błąd, może on zostać uruchomiony, jeśli serwer nie zwróci błędu prawidłową odpowiedź graficzną. |
Powiązane uprawnienia
setCookie
Ustawia lub usuwa plik cookie o określonej nazwie, wartości i opcjach.
Składnia
setCookie(name, value[, options, encode])
Parametry
Parametr | Typ | Opis |
---|---|---|
name |
ciąg znaków | Nazwa pliku cookie. |
value |
ciąg znaków | Wartość pliku cookie. |
options |
obiekt | Określa Domena, Atrybuty Path, Wygasa, Max-Age, Secure i SameSite. (Patrz Opcje poniżej). |
encode |
boolean (wartość logiczna). | Określa, czy wartość pliku cookie ma być kodowana za pomocą
JavaScript
encodeURIComponent()
Domyślna wartość to true . |
- Domena: ustawiona przez usługę
options['domain']
(jeśli występuje). Ustaw tę wartość do'auto'
, aby spróbować zapisać plik cookie przy użyciu jak najszerszej domeny, na podstawie lokalizacji dokumentu. Jeśli to nie pomoże, będzie próbowano stopniowo. zawężenie subdomen. Jeśli to nie zadziała, spróbuje zapisać plik cookie bez domeny. Jeśli nie zostanie ustawiona żadna wartość, zostanie podjęta próba zapisu pliku cookie. bez określonej domeny. Uwaga: jeśli plik cookie bez określonej domeny jest zapisywanych w kodziedocument.cookie
, klient użytkownika jako domyślna domena pliku cookie z hostem bieżącej lokalizacji dokumentu. - Ścieżka: ustawiona przez zasadę
options['path']
(jeśli występuje). Gdy plik cookie bez ścieżki jest zapisywany w interfejsiedocument.cookie
, klient użytkownika domyślnie użyje wartości ścieżkę pliku cookie do ścieżki bieżącej lokalizacji dokumentu. - Max-Age (Maksymalny wiek): ustawiony przez
options['max-age']
(jeśli występuje). - Data ważności: ustawiona przez zasadę
options['expires']
(jeśli istnieje). Jeśli występuje ten atrybut, być ciągiem daty w formacie UTC. PlikuDate.toUTCString()
można użyć do formatowaniaDate
dla tego parametru. - Bezpieczna: ustawiona przez zasadę
options['secure']
(jeśli istnieje). - SameSite:ustawiona przez parametr
options['samesite']
(jeśli występuje).
Powiązane uprawnienia
setDefaultConsentState
Przekazuje domyślną aktualizację zgody do warstwy danych, która ma zostać przetworzona, gdy tylko możliwe po zakończeniu bieżącego zdarzenia i wszystkich wywołanych przez niego tagów (lub upłynął limit czasu przetwarzania tagu). Aktualizacja jest gwarantowana do przetworzenia w tym kontenerze, zanim elementy znajdujące się w kolejce pojawią się w warstwie danych. Więcej informacji o zgodzie użytkowników
Przykład:
const setDefaultConsentState = require('setDefaultConsentState');
setDefaultConsentState({
'ad_storage': 'denied',
'analytics_storage': 'granted',
'third_party_storage': 'denied',
'region': ['US-CA'],
'wait_for_update': 500
});
Składnia
setDefaultConsentState(consentSettings)
Parametry
Parametr | Typ | Opis |
---|---|---|
consentSettings |
obiekt | Obiekt, który określa domyślny stan określonej zgody . |
Obiekt consentSettings
to mapowanie dowolnych ciągów znaków dotyczących typu zgody na
wartość 'granted'
lub 'denied'
. Obsługuje następujące wartości:
Nazwa klucza | Typ | Opis |
---|---|---|
consentType |
ciąg znaków | Wartości każdego typu zgody można ustawić na „Przyznano” lub „Odrzucono”. Każda wartość inna niż „granted” będzie traktowana jako „odrzucona”. Ustawienie wartość „niezdefiniowana” nie będzie miała żadnego wpływu na jej poprzednią wartość. |
region |
Tablica | Opcjonalna tablica kodów regionów określająca, który region do których mają zastosowanie ustawienia dotyczące zgody użytkownika. Kody regionów są wyrażone za pomocą kraju lub podgrup w formacie ISO 3166-2. |
wait_for_update |
liczba | Określa wartość w milisekundach, aby kontrolować, jak długo czekać na przetworzenie danych wysłano. Używany z narzędziami do uzyskiwania zgody, które ładują się asynchronicznie. |
Powiązane uprawnienia
access_consent
z uprawnieniami do zapisu wszystkich rodzajów zgody w
ConsentSettings.
setInWindow
Ustawia wartość podaną w window
w podanym kluczu. Domyślnie ta metoda nie:
ustaw wartość w window
, jeśli istnieje już wartość. Ustaw
overrideExisting
na true
, aby ustawić wartość w window
niezależnie od
obecność istniejącej wartości. Zwraca wartość logiczną: true
, jeśli wartość była
został ustawiony. W przeciwnym razie false
.
Składnia
setInWindow(key, value, overrideExisting)
Parametry
Parametr | Typ | Opis |
---|---|---|
key |
ciąg znaków | Klucz w funkcji window , w której ma zostać umieszczona wartość. |
value |
* | Wartość do ustawienia w window . |
overrideExisting |
boolean (wartość logiczna). | Flaga wskazująca, że wartość powinna być ustawiona w window ,
niezależnie od tego, czy zawiera ona wartość. |
Powiązane uprawnienia
sha256
Oblicza skrót SHA-256 danych wejściowych i wywołuje wywołanie zwrotne z funkcją
skrótu zakodowanego w base64, chyba że obiekt options
określa inny
kodowanie wyjściowego.
Przykład:
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'});
Składnia
sha256(input, onSuccess, onFailure = undefined, options = undefined)
Parametry
Parametr | Typ | Opis |
---|---|---|
input |
ciąg znaków | Ciąg, dla którego zostanie obliczony hasz. |
onSuccess |
funkcja | Funkcja jest wywoływana z otrzymanym skrótem zakodowanym w formacie base64, chyba że funkcja
Obiekt options określa inne kodowanie wyjściowe. |
onFailure |
funkcja | Wywoływana, jeśli podczas obliczania skrótu wystąpi błąd lub przeglądarka nie ma natywnej obsługi sha256. Wywołanie zwrotne obiekt z nazwą błędu i komunikatem. |
options |
obiekt | Opcjonalny obiekt opcji określających kodowanie wyjściowe. Jeśli
obiekt powinien zawierać klucz outputEncoding
z wartością base64 lub hex . |
Powiązane uprawnienia
Brak.
templateStorage
Zwraca obiekt z metodami dostępu do pamięci szablonów. Szablon pamięci masowej umożliwia udostępnianie danych pomiędzy uruchomieniami jednego szablonu. Dane są przechowywane przez cały okres istnienia strony.
Składnia
const templateStorage = require('templateStorage');
templateStorage.getItem(key);
templateStorage.setItem(key, value);
templateStorage.removeItem(key);
// Deletes all stored values for the template.
templateStorage.clear();
Powiązane uprawnienia
Przykład
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
Interfejs API toBase64
umożliwia zakodowanie ciągu znaków do formatu reprezentacji base64.
Składnia
toBase64(input)
Parametry
Parametr | Typ | Opis |
---|---|---|
input |
ciąg znaków | Ciąg do zakodowania. |
Przykład
const toBase64 = require('toBase64');
const base64Hello = toBase64('hello');
Powiązane uprawnienia
Brak
updateConsentState
Przenosi aktualizację zgody do warstwy danych, aby została jak najszybciej przetworzona po bieżącym zdarzeniu i zakończeniu jego przetwarzania (albo przekroczono limit czasu przetwarzania tagu). Aktualizacja będzie na pewno przetwarzane w tym kontenerze przed elementami znajdującymi się w kolejce w warstwie danych. Więcej informacji o zgodzie.
Przykład:
const updateConsentState = require('updateConsentState');
updateConsentState({
'ad_storage': 'granted',
'analytics_storage': 'denied',
'third_party_storage': 'granted',
});
Składnia
updateConsentState(consentSettings)
Parametry
Parametr | Typ | Opis |
---|---|---|
consentSettings |
obiekt | Obiekt, który aktualizuje stan określonych rodzajów zgody. |
Obiekt consentSettings
to mapowanie dowolnych ciągów znaków dotyczących typu zgody na
wartość 'granted'
lub 'denied'
. Obsługuje następujące wartości:
Nazwa klucza | Typ | Opis |
---|---|---|
consentType |
ciąg znaków | Każdy rodzaj zgody możesz ustawić na „Przyznano”. czy „odrzucony”. Dowolna wartość inna niż „granted” zostanie potraktowany jako „odrzucony”. Ustawienie wartość nieokreślona nie będzie miało wpływu na jej poprzednią wartość. |
Powiązane uprawnienia
access_consent
z uprawnieniami do zapisu wszystkich rodzajów zgody w
ConsentSettings.
Testuj interfejsy API
Te interfejsy API współpracują z testami JavaScript w trybie piaskownicy, aby tworzyć testy dotyczące niestandardowych
szablonów w Menedżerze tagów Google. Te testowe interfejsy API nie wymagają require()
. Więcej informacji o testach szablonów niestandardowych
assertApi
Zwraca obiekt dopasowania, którego można używać do płynnego formułowania asercji do argumentu danego interfejsu API.
Składnia
assertApi(apiName)
Parametry
Parametr | Typ | Opis |
---|---|---|
apiName |
ciąg znaków | nazwa interfejsu API do sprawdzenia; ten sam ciąg znaków, który został przekazany do
require()
|
Dopasowania
Subject.wasCalled()
Subject.wasNotCalled()
Subject.wasCalledWith(...expected)
Subject.wasNotCalledWith(...expected)
Przykłady
assertApi('sendPixel').wasCalled();
assertApi('getUrl').wasNotCalled();
assertApi('makeNumber').wasCalledWith('8');
assertApi('setInWindow').wasNotCalledWith('myVar', 'theWrongValue');
assertThat
Interfejs API assertThat
jest oparty na bibliotece Google [Truth]. Zwraca ono
który może być używany do płynnego formułowania asercji na temat wartości podmiotu. An
niepowodzenie asercji spowoduje natychmiastowe zatrzymanie testu i oznaczenie go jako nieudanego. Pamiętaj jednak:
niepowodzenie w jednym teście nie wpływa na pozostałe przypadki testowe.
Składnia
assertThat(actual, opt_message)
Parametry
Parametr | Typ | Opis |
---|---|---|
actual |
dowolny | Wartość do użycia podczas sprawdzania płynności. |
opt_message |
ciąg znaków | Opcjonalna wiadomość do wyświetlenia w przypadku niepowodzenia potwierdzenia. |
Dopasowania
Dopasowanie | Opis |
---|---|
isUndefined() |
Wskazuje, że obiekt to undefined . |
isDefined() |
Wskazuje, że temat nie należy do kategorii undefined . |
isNull() |
Wskazuje, że obiekt to null . |
isNotNull() |
Wskazuje, że temat nie należy do kategorii null . |
isFalse() |
Wskazuje, że obiekt to false . |
isTrue() |
Wskazuje, że obiekt to true . |
isFalsy() |
Twierdzenie, że temat jest fałszywy. Wartości Falsy to:
undefined , null , false
NaN , 0 i „” (pusty ciąg znaków). |
isTruthy() |
Twierdzenie, że temat jest zgodny z prawdą. Wartości Falsy to:
undefined , null , false
NaN , 0 i „” (pusty ciąg znaków). |
isNaN() |
Stwierdza, że podmiot jest wartością NaN. |
isNotNaN() |
Twierdzi, że podmiot ma dowolną wartość oprócz NaN. |
isInfinity() |
Twierdzi, że obiekt ma wartość dodatnią lub ujemną (nieskończoność). |
isNotInfinity() |
Twierdzi, że temat ma dowolną wartość poza dodatnią lub ujemną Nieskończoność. |
isEqualTo(expected) |
Stwierdza, że podmiot jest równa podanej wartości. To jest wartość porównanie, a nie referencje. Zawartość obiektów i tablic są porównywane rekurencyjnie. |
isNotEqualTo(expected) |
Stwierdza, że podmiot nie jest równa podanej wartości. To jest porównanie wartości, a nie referencyjne. zawartość obiektów i są porównywane rekurencyjnie. |
isAnyOf(...expected) |
Stwierdza, że temat jest równa jednej z podanych wartości. To jest porównanie wartości, a nie referencyjne. zawartość obiektów i są porównywane rekurencyjnie. |
isNoneOf(...expected) |
Stwierdza, że podmiot nie jest równa żadnej z podanych wartości. Ten to porównanie wartości, a nie odwołanie. Zawartość obiektów a tablice są porównywane rekurencyjnie. |
isStrictlyEqualTo(expected) |
Twierdzi, że obiekt jest ściśle równy (=== ) jak
danej wartości. |
isNotStrictlyEqualTo(expected) |
Twierdzi, że podmiot nie jest ściśle identyczny z (!== )
podanej wartości. |
isGreaterThan(expected) |
Wskazuje, że podmiot jest większy niż (> ) podana
w uporządkowanym porównaniu. |
isGreaterThanOrEqualTo(expected) |
Twierdzi, że podmiot jest większy lub równy
(>= ) wartość w porównaniu uporządkowanym. |
isLessThan(expected) |
Wskazuje, że temat jest mniejszy niż (< ) podana
w uporządkowanym porównaniu. |
isLessThanOrEqualTo(expected) |
Wskazuje, że temat ma wartość mniejszą lub równą (<= )
podanej wartości w porównaniu uporządkowanym. |
contains(...expected) |
Wskazuje, że temat jest tablicą lub ciągiem znaków zawierającym wszystkie podane wartości w dowolnej kolejności. To jest porównanie wartości, a nie odwołanie porównanie. Porównywana jest zawartość obiektów i tablic cyklicznie. |
doesNotContain(...expected) |
Wskazuje, że temat jest tablicą lub ciągiem znaków, które nie zawierają żadnego z podane wartości. To jest porównanie wartości, a nie pliku referencyjnego. Zawartość obiektów i tablic jest porównywana rekurencyjnie. |
containsExactly(...expected) |
Wskazuje, że podmiot jest tablicą zawierającą wszystkie podane wartości w dowolnej kolejności i żadnych innych wartości. To jest porównanie wartości, a nie do porównania. Porównywana jest zawartość obiektów i tablic cyklicznie. |
doesNotContainExactly(...expected) |
Wskazuje, że obiekt jest tablicą, która zawiera inny zbiór dla podanych wartości w dowolnej kolejności. To porównanie wartości, nie jest porównaniem referencyjnym. Zawartość obiektów i tablic jest rekurencyjnie. |
hasLength(expected) |
Potwierdza, że temat jest tablicą lub ciągiem znaków o podanej długości. Potwierdzenie zawsze kończy się niepowodzeniem, jeśli wartość nie jest tablicą ani ciągiem znaków. |
isEmpty() |
Potwierdza, że temat jest tablicą lub pustym ciągiem znaków (długość = 0). Potwierdzenie zawsze kończy się niepowodzeniem, jeśli wartość nie jest tablicą lub ciągu znaków. |
isNotEmpty() |
Potwierdza, że temat jest tablicą lub ciągiem, który nie jest pusty (długość > 0). Potwierdzenie zawsze kończy się niepowodzeniem, jeśli wartość nie jest tablicą lub ciągu tekstowego. |
isArray() |
Stwierdza, że typem podmiotu jest tablica. |
isBoolean() |
Stwierdza, że typ podmiotu jest wartością logiczną. |
isFunction() |
Stwierdza, że typ podmiotu jest funkcją. |
isNumber() |
Stwierdza, że typ podmiotu jest liczbą. |
isObject() |
Stwierdza, że typ podmiotu jest obiektem. |
isString() |
Zapewnia, że typem tematu jest ciąg znaków. |
Przykłady
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
Natychmiastowo zakończy bieżący test i wydrukuje podany komunikat (jeśli został podany).
Składnia
fail(opt_message);
Parametry
Parametr | Typ | Opis |
---|---|---|
opt_message |
ciąg znaków | Opcjonalny tekst komunikatu o błędzie. |
Przykład
fail('This test has failed.');
mock
Interfejs mock
API pozwala zastąpić działanie interfejsów API w trybie piaskownicy. Przykład
Interfejs API jest bezpieczny w kodzie szablonu, ale działa tylko w trybie testowym.
Przykłady są resetowane przed uruchomieniem każdego testu.
Składnia
mock(apiName, returnValue);
Parametry
Parametr | Typ | Opis |
---|---|---|
apiName |
ciąg znaków | Nazwa interfejsu API do imitacji; ten sam ciąg znaków, który został przekazany do
require() |
returnValue |
dowolny | Wartość do zwrócenia dla interfejsu API lub funkcji wywoływanej zamiast argumentu
API. Jeśli returnValue jest funkcją, jest ona wywoływana w argumencie
miejsce interfejsu API piaskownicy; jeśli returnValue to coś innego
niż funkcja, ta wartość jest zwracana zamiast metody
API. |
Przykłady
mock('encodeUri', "https://endpoint.example.com/?account=12345");
mock('sendPixel', function(url, onSuccess, onFailure) {
onSuccess();
});
mockObject
Interfejs mockObject
API pozwala zastąpić działanie interfejsów API w trybie piaskownicy, które
zwraca obiekt. Interfejs API jest bezpieczny w kodzie szablonu, ale działa
tylko w trybie testowym. Przykłady są resetowane przed uruchomieniem każdego testu.
Składnia
mockObject(apiName, objectMock);
Parametry
Parametr | Typ | Opis |
---|---|---|
apiName |
ciąg znaków | Nazwa interfejsu API do imitacji; ten sam ciąg znaków, który został przekazany do
require() |
objectMock |
obiekt | Wartość do zwrócenia dla interfejsu API lub funkcji wywoływanej zamiast argumentu API. Musi być obiektem. |
Przykłady
const storage = {};
mockObject('localStorage', {
setItem: (key, value) => {storage[key] = value;},
getItem: (key) => storage[key],
});
runCode
Uruchamia kod szablonu, czyli zawartość karty Kod, w sekcji w bieżącym środowisku testowym z danym obiektem danych wejściowych.
Składnia
runCode(data)
Parametry
Parametr | Typ | Opis |
---|---|---|
data |
obiekt | Obiekt danych do użycia w teście. |
Zwracana wartość
Zwraca wartość zmiennej dla szablonów zmiennych. zwraca undefined
dla
wszystkich pozostałych typów szablonów.
Przykład
runCode({field1: 123, field2: 'value'});