在下面的代码中
$.ajax({
type: "post",
url: "/signIn",
dataType: "json",
data: data,
success: function (response) {
alert("response----------------"+response) //[]
if(response.length==0){
alert("No data found")
}
}
});
响应变为[]
且未输入if语句。
有没有办法检查空数组。
答案 0 :(得分:0)
$.ajax({
type: "post",
url: "/signIn",
dataType: "json",
data: data,
success: function (response) {
alert("response----------------"+response) //[]
//modify if(response.length==0){
if(!response || response.length==0){
alert("No data found")
}
}
答案 1 :(得分:0)
我怀疑 API返回的值不是数组,可能是对象或字符串。
使用
检查console.log(typeof response);
由于您已经使用 jQuery
,我更愿意使用 jQuery.isEmptyObject()
试试这个
jQuery.isEmptyObject(response);
从你的评论中,既然你提到了字符串,那么除此之外别无他法
if (response === "[]") //Better
if (response.length === 2) //Not good, yet can be used