Javascript 如何在回调函数中从另一个作用域更新变量?
我在更新一个变量时遇到了问题,该变量与回调函数的作用域不同,而回调函数本身就是jQuery getJSON调用中的一个参数。有人能告诉我如何从下面的回调函数中将元素推送到chg_percent变量上吗?谢谢大家!Javascript 如何在回调函数中从另一个作用域更新变量?,javascript,jquery,callback,scope,Javascript,Jquery,Callback,Scope,我在更新一个变量时遇到了问题,该变量与回调函数的作用域不同,而回调函数本身就是jQuery getJSON调用中的一个参数。有人能告诉我如何从下面的回调函数中将元素推送到chg_percent变量上吗?谢谢大家! $(document).ready(function() { chg_percent = []; // array of all percent changes var url = 'http://finance.yahoo.com/webservice/v1/sy
$(document).ready(function() {
chg_percent = []; // array of all percent changes
var url = 'http://finance.yahoo.com/webservice/v1/symbols/allcurrencies/quote?format=json&view=basic&callback?';
$.getJSON(url, null, function(data) {
for (i = 0; i < data.list.resources.length; i++) {
chg_percent.push(data.list.resources[i].resource.fields.chg_percent);
}
});
});
$(文档).ready(函数(){
chg_percent=[];//所有百分比更改的数组
var url='1〕http://finance.yahoo.com/webservice/v1/symbols/allcurrencies/quote?format=json&view=basic&callback?';
$.getJSON(url,null,函数(数据){
对于(i=0;i
添加chng_percent
作为参数以及函数(数据){…}
应该是这样的:
$.getJSON(url, null, function(data, chng_percent) {
在答案开始纷至沓来之前,这段代码实际上是有效的,而且
chg_percent
没有范围问题。您能再次澄清范围问题吗?运行时请查看控制台。我认为问题实际上是[同源策略]{}。正如@Alexander所说,没有范围问题。就我所见,存在范围问题。即使我这样做了:chg_percent.push(3);然后在.getJSON调用go alert(chg_%)之后,它没有被推送到它上面。这里没有同源问题。这是jsonp,它获取的数据没有问题。我明白了,你可以绕过CORS。我要走了。祝你好运在离开之前,