在JavaScript(winJs)中从另一个函数向函数传递变量

在JavaScript(winJs)中从另一个函数向函数传递变量,javascript,json,winjs,Javascript,Json,Winjs,您好,我正在使用Java脚本使用Windows 8应用程序 function fetchFromLiveProvider(currentList, globalList,value) { feedburnerUrl = currentList.url, feedUrl = "http://ajax.googleapis.com/ajax/services/feed/load?v=1.0&output=json&num=999&q=" + encodeURI

您好,我正在使用Java脚本使用Windows 8应用程序

function fetchFromLiveProvider(currentList, globalList,value) {
    feedburnerUrl = currentList.url,
    feedUrl = "http://ajax.googleapis.com/ajax/services/feed/load?v=1.0&output=json&num=999&q=" + encodeURIComponent(feedburnerUrl);
        WinJS.xhr({url: feedUrl, responseType: "rss/json"
        }).done(function complete(result) {
                 var jsonData = JSON.parse(result.response);
                    //console.log(JSON.stringify(jsonData));
                 var entries = jsonData.responseData.feed;
               });
    }
function setOther(entries){ 
       //some code here
    }

我想做的是将fetchFromLiveProvider函数中的条目传递给另一个名为setOther(entries){}的函数。感谢您的帮助…

由于WinJS.xhr返回承诺,您可以执行以下操作:

var entriesPromise = function fetchFromLiveProvider(currentList, globalList, value) {
    feedburnerUrl = currentList.url,
    feedUrl = "http://ajax.googleapis.com/ajax/services/feed/load?v=1.0&output=json&num=999&q=" + encodeURIComponent(feedburnerUrl);
    return WinJS.xhr({
        url: feedUrl,
        responseType: "rss/json"
    });
}

function setOther(entries) {
    entries.done(function complete(result) {
        var jsonData = JSON.parse(result.response);
        //console.log(JSON.stringify(jsonData));
        var entries = jsonData.responseData.feed;

        //some code here
    })
}

setOther(entriesPromise);
就叫它吧<代码>设置其他(jsonData.responseData.feed)done功能中选择code>。