JSON响应数据长度在Ajax中得到未定义的错误?

Dev*_*per 1 javascript ajax jquery json response

我想language在JavaScript警告框中获取长度-

见截图 -

Ajax响应 -

在此输入图像描述

在此输入图像描述

我的Ajax代码 -

function search_menu(){
    $.ajax({
        type: 'post',
        url: rootUrl() + "rest_apis/search_menu.json", 
        cache: false,        
        success: function(res){ //alert(data.data[0].language[142]);
            var len = res.data[0].language.length; 
            alert(len); //Showing undefined
        },
        contentType: 'application/json',
        dataType: 'json'
    });
}
Run Code Online (Sandbox Code Playgroud)

我只是警告alert(lang)它显示未定义.实际上在有36条记录的语言中.为何显示undefined

Jer*_*lle 8

试试: Object.keys(res.data[0].language).length

实例:

var res = {
        "data" : [
                {
                  "language" : { "107":"english", "142":"hindi", "143" : "indonesian"}
                }
        ]
}


alert("There are " + Object.keys(res.data[0].language).length + " languages." )
Run Code Online (Sandbox Code Playgroud)