javascript - 局部函数完成后全局变量失去其值
问题描述
我有这段小代码
JS
function insertDataIntoTable(jsonUrl, Id) {
var obj;
$.getJSON(jsonUrl, function(data){
console.log("1: "+data.elem[Id]); //outputs the correct object
obj= data.elem[Id];
console.log("2: "+obj); //still is correct
});
console.log("3: "+obj); //now it logs "undefined"
}
它指的是一个格式良好的 JSON,如果不是真的需要,它不想发布。我希望有人可以帮助我。
解决方案
function insertDataIntoTable(jsonUrl, Id) {
var obj;
var callback = function(){
console.log("3: "+obj); //now it logs "undefined"
}
$.getJSON(jsonUrl, function(data){
console.log("1: "+data.elem[Id]); //outputs the correct object
obj= data.elem[Id];
console.log("2: "+obj); //still is correct
callback();
});
}
推荐阅读
- java - 解密加密的私钥:数据不是对象 ID
- javascript - React Minified error #130 仅在构建期间而不是在运行 yarn start 时
- javascript - 如何使用按钮在javascript中重新开始倒计时
- spring-boot - 使用 Spring Boot 发送电子邮件
- android - 有没有办法在 WebView 中播放视频时隐藏媒体控件?
- java - 是否有基于数组的 Map 实现?
- ios - Flutter 与 iOS 原生页面相互跳转
- html - 如何将焦点集中在电子框架中的 html 控件上?
- sql - 计算故障率的 SQL 编程
- android - 是否有 webhook 可以获取有关 Google Play 中已取消应用程序的通知?