我没有等待5秒钟,而是使用setTimeout似乎正在立即执行:
window.setTimout(getNegativeErrs(errors), 5000);
function getNegativeErrs(ers) {
for( i in errors ) {
var errobj = getByValue(dataLayer, errors[i]);
if(!errobj) {
dataLayer.push({
'event': 'negative_errors',
'unseen': errors[i],
'module': 'registration'
})
}
}
}
传递的函数必须是特定格式吗?我真的不知道在这里编辑什么或从哪里开始寻找?
答案 0 :(得分:2)
您的函数getNegativeErrs()
正在执行,并使用其返回值作为回调。
正确的方式:
window.setTimeout(function() {
getNegativeErrs(errors)
}, 5000);
function getNegativeErrs(ers) {
for( i in errors ) {
var errobj = getByValue(dataLayer, errors[i]);
if(!errobj) {
dataLayer.push({
'event': 'negative_errors',
'unseen': errors[i],
'module': 'registration'
})
}
}
}