javascript - 如何在javascript函数之外获取数据

标签 javascript

我想知道我是否可以在这里获得一些帮助,到目前为止我还不是一个熟练的编码员,但我试图检索函数之外的结果,并且我得到的日志结果是未定义

var pricecrex;

getDataFromAPI("https://api.crex24.com/CryptoExchangeService/BotPublic/ReturnTicker?request=[NamePairs=BTC_WAGE]", 
    true, 
    function(data){
        var resultcrex = JSON.parse(data);
        if (resultcrex !== "undefined") {
            if (resultcrex) {
                var pricecrex = resultcrex.Tickers[0].Last
            }
            else {
                msg.reply("0")
            }
        }
    }
);

console.log(pricecrex);

最佳答案

这是因为 Ajax 请求是异步的。 console.log() 在收到请求的响应之前执行,因此在 pricecrex 中设置值之前执行。所以你得到了未定义

var pricecrex;

getDataFromAPI("https://api.crex24.com/CryptoExchangeService/BotPublic/ReturnTicker?request=[NamePairs=BTC_WAGE]", 
true, function(data) {
        var resultcrex = JSON.parse(data);
        if (resultcrex !== "undefined") {
            if (resultcrex) {
                pricecrex = resultcrex.Tickers[0].Last;
                print(pricecrex);
            }
            else {
                msg.reply("0")
            }
        }
    }
);

function print(data) {
    console.log(data);
}

关于javascript - 如何在javascript函数之外获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53023994/

相关文章:

javascript - 如何在 mvc3 View 的同一窗口中打开表单?

javascript - Telegram bot api - answerInlineQuery 中的 QUERY_ID_INVALID - Javascript

javascript - 如何在 Ember 中切换类

javascript - 如何避免传单 javascript 库中多个 MultiPolygon GeoJSON 层重叠?

javascript - 混合排序完成后,Jquery 函数不起作用

javascript - polymer v2.0 : how to write reusable mixin code

javascript - 可以用 Protractor 测试视频播放、暂停和音频吗?

FireFox 上的 JavaScript map 函数安全错误

javascript - 如何在调查问卷表单中添加显示/隐藏

javascript - 未知数量的 promise 取决于先前 promise 的结果?