您应该检查ajax返回数据还是让javascript在空数据上抛出错误?
因此,在处理jquery中的成功数据时,您是否应该检查返回数据是否包含如下所示的必要数据:您应该检查ajax返回数据还是让javascript在空数据上抛出错误?,javascript,jquery,ajax,Javascript,Jquery,Ajax,因此,在处理jquery中的成功数据时,您是否应该检查返回数据是否包含如下所示的必要数据: success: function (data) { if (data.new_rank !== undefined) { $('._user_rank').html(data.new_rank); } } 还是让它在不存在时失败 success: function (data) { $('._user_rank').html(data.new_rank); }
success: function (data) {
if (data.new_rank !== undefined) {
$('._user_rank').html(data.new_rank);
}
}
还是让它在不存在时失败
success: function (data) {
$('._user_rank').html(data.new_rank);
}
在上一个示例中,您可以检查是否由于错误而更改了某些内容并需要进行修复
什么方法是最好的 jqueryajax请求为您提供了一种处理请求错误的方法
$.ajax(url, {
success: function(data) {
// success
},
error: function() {
// error
}
});
如果您试图捕获的不是请求错误,您仍然应该自己处理错误,不要让javascript一路抛出错误。最好检查它,查看您在完成或其他事件中可能存在的其他代码。如果没有,它们将不会在出错后运行。您也可以这样检查:
success: function (data) {
if (data.new_rank) {
$('._user_rank').html(data.new_rank);
}
}
我想说的一个解决方案是遵循$.ajax中的严格数据类型,比如
dataType:json
。
使用成功和错误处理程序。如果返回数据不是json类型,则将通过错误处理程序进行处理
$.ajax(url, {
dataType: 'json'
success: function(data) {
// success
},
error: function() {
// error
}
});
如果你能修复它,检查它这是非常基于意见的,真的-这取决于你有多在乎你是否最终在你的UI中显示
未定义的,或者您对调用的任何页面的信任程度,以确保在成功调用时正确填充数据等,并确保范围受到足够的限制,以便您不会试图处理任何未说明的内容。