Я пытаюсь автоматизировать некоторые проверки работоспособности моей учетной записи GTM, чтобы убедиться, что каждое событие / объект остается неизменным после выпуска веб-сайта. Поэтому я хочу создать / использовать некий валидатор JSON в javascript, который можно использовать непосредственно в браузере.
Есть ли способ проверить объект JSON в браузере? Я работаю над решением, чтобы очистить объекты dataLayer непосредственно в браузере, а затем проверить, содержат ли объекты правильные данные. Я нашел много разных «валидаторов JSON» в GitHub, но таких, которые не поддерживают проверку объектов JSON в консоли в браузере.
Пока я не думаю, что нужно проверять всю схему JSON вместо каждого объекта в отдельности.
Я написал код для проверки
var dataLayerList = dataLayer;
var dataLayerEventName;
for(var i = 0; i < datalayerList.length; i++){
var dataLayerObj = datalayerList[i];
if(dataLayerObj.event){
dataLayerEventName = dataLayerObj.event;
switch(dataLayerEventName){
case 'foo':
foo(dataLayerObj);
break;
case 'bar':
bar(dataLayerObj);
break;
}
}
}
function foo(dataLayerObj){
//check if dataLayerObj contains the same keys and value types as predefined JSON object
}
function bar(dataLayerObj){
//check if dataLayerObj contains the same keys and value types as predefined JSON object
}
Что я хочу сделать, это посмотреть, соответствует ли объект, переданный в параметрах каждой функции, предопределенным объектам JSON.