使用jQuery在JSON中测试空数组对象

mat*_*ole 22 ajax jquery json

我有一个请求返回一个JSON对象与一个属性是一个数组.如何测试阵列是否为空?

使用jQuery代码:

 $.getJSON(
            jsonUrl,
            function(data) {
                if (data.RoleOwners == [ ]) {
                    $('<tr><td>' + noRoleOwnersText + '</td></tr>').appendTo("#roleOwnersTable tbody");
                    return;
                }
                $.each(data.RoleOwners, function(i, roleOwner) {
                    var tblRow =
                    "<tr>"
                    + "<td>" + roleOwner.FirstName + "</td>"
                    + "<td>" + roleOwner.LastName + "</td>"
                    + "</tr>"
                    $(tblRow).appendTo("#roleOwnersTable tbody");
                });
Run Code Online (Sandbox Code Playgroud)

我可以用什么来代替if(data.RoleOwners == [])来测试RoleOwners是否为空数组?

谢谢,马特

svi*_*nto 26

(data.RoleOwners.length === 0)
Run Code Online (Sandbox Code Playgroud)


Sad*_*tam 23

你也可以 jQuery.isEmptyObject(data.RoleOwners)

看看http://api.jquery.com/jQuery.isEmptyObject/

  • 这个答案适用于空数组或空数组通过数据结果传递(接受的答案没有),这要归功于此 (2认同)