【JavaScript】JS函数里的返回值为undefined

问题描述:

调用有返回值的JS函数,结果返回undefined

//根据功能查询属性列表
function getPropertyByFunction(functionID){
    $.ajax({
        type: "post",
        url: "/Admin/handle/User.ashx",
        data: "FunctionID=" + functionID + "&flag=GetPropertyByFunction",
        async: false,
        success: function (data) {
            data = JSON.parse(data); 
            return data.data;
        }
    });
}

//获取功能节点下的属性集合 
var propertyList = getPropertyByFunction(treeNode.id) ;      
console.log(propertyList)

原因:

在Ajax中写了return语句,结果只是跳出了Ajax

解决:

在Ajax之前声明一个变量,来记录Ajax获得的数据,并在Ajax结束之后return

原文链接:https://www.cnblogs.com/BigGame/p/13294164.html

原文地址:https://www.cnblogs.com/zhaoyl9/p/15635076.html