Javascript 阻止调用

标签 javascript

如何在 JavaScript 中执行阻塞调用?

在下面的代码中,在 if block 中的代码完成之前,通过调用不同的 js 文件中的 chached.get 方法返回一些值,该代码片段最后一行的警报就会出现。

var getCachedData = function(_key){

    var retStr;
    if (_key != '' || _key != null) {
        cached.get(_key, function(data){
                   if(data){ 
                       alert('data = ' +data.value);
                       return data.value;
                   }
                   else{  
                        return undefine;              
                   }                    
                 });                  
    }
    alert('completed');
}

最佳答案

cached.get 方法必须异步执行某些操作。您作为参数提供给该方法的函数似乎是一个回调函数,一旦 get 方法成功返回,该函数就会执行。如果您需要运行依赖于 cached.get 调用结果的代码,则需要将其放入该回调中。

关于Javascript 阻止调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6937496/

相关文章:

php - 如何更改plupload中文件的位置

PHP设置COOKIE,用JQUERY COOKIE插件改的,用php不能编辑?

javascript - Google Analytics 在哈希变化时设置页面 View

javascript - 无法使用 node-postgres 从 Node 访问 Postgres 中的正确表

javascript - 让scrollTop()只执行一次

javascript - typescript - 不可分配给打字学生

javascript - 仅使用一个选项重置 Angular JS 中的选择框

javascript - 最常用的 javascript/jquery TreeView 插件是什么?

Javascript - 追加对象数组

javascript - Bootstrap 文件输入插件正在删除更改或文件选择的所有预览