我是靠谱客的博主 务实刺猬,最近开发中收集的这篇文章主要介绍js写函数调用返回值传递接受不到,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

function a() {
	return true;
}
function b() {
	var ret = a();
	console.log("结果="+ret);
}

 正常可以打印出:结果=true

但是如果这样写

function a() {
	$.ajax({
        url:'www.csdn.com',
        data: {},
        method:'post',
        dataType:'json',
        success:function(data){
            return true;
        },
        error: function (data) {
            return false;
        }
    });
}
function b() {
	var ret = a();
	console.log("结果="+ret);
}

就打印失败

原因是

由于使用ajax进行异步请求,导致函数调用a函数,不等ajax执行完,就执行console.log,导致无法获取a函数的输出,输出报错

修改方法,在ajax里面添加  async:false  ,将异步请求关掉,改为同步就行了。

如下:

function a() {
	$.ajax({
        url:'www.csdn.com',
        data: {},
        method:'post',
        dataType:'json',
        async:false,
        success:function(data){
            return true;
        },
        error: function (data) {
            return false;
        }
    });
}
function b() {
	var ret = a();
	console.log("结果="+ret);
}

OK!

最后

以上就是务实刺猬为你收集整理的js写函数调用返回值传递接受不到的全部内容,希望文章能够帮你解决js写函数调用返回值传递接受不到所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(46)

评论列表共有 0 条评论

立即
投稿
返回
顶部