gpt4 book ai didi

javascript - 修改函数内的全局 javascript 变量

转载 作者:行者123 更新时间:2023-11-28 20:48:21 28 4
gpt4 key购买 nike

我正在尝试在函数内克隆一个 json 对象,希望访问该函数外部的对象。但是当函数完成后,对象似乎仍然是未定义的。好像不是同一个变量?

var jsonUserObj;
$.getJSON("user.json", function(content){
jsonUserObj = $.parseJSON(JSON.stringify(content));
console.log(content);
console.log(jsonUserObj); //looks fine!
});
console.log(jsonUserObj); //undefined

回调函数内部包含所有数据,但不会保留在回调函数之外。如何使其在全局范围内均可评估?

最佳答案

$.getJSON 是异步的,因此代码末尾的 console.log 在 $.getJSON 返回其结果之前运行。

您应该修改回调内的变量(其中看起来不错),然后在该函数内使用该变量,此回调是您可以保证设置变量的唯一地方。

您还可以使用 $.ajax 的同步版本,但这确实不推荐(而且可能没有必要)。

关于javascript - 修改函数内的全局 javascript 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13031467/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com