私はgithubからJSONオブジェクトを取得する次のコードを持っていますが、特定の部分を配列に追加するのは難しいです。コールバック関数が実行されていません
function getTree(hash) {
var pathToTree, returnedJSON;
pathToTree = 'https://api.github.com/repos/myaccount/myrepo/git/trees/' + hash;
$.ajax({
accepts: 'application/vnd.github-blob.raw',
dataType: 'jsonp',
url: pathToTree,
success: function (json) {
returnedJSON = json;
},
error: function (error) {
console.debug(error);
}
});
return returnedJSON;
}
function parseTree(hash) {
var objectedJSON, objectList = [], i, entry;
objectedJSON = getTree(hash, function() {
console.debug(objectedJSON); // this is not appearing in console
for (i = 0; i < objectedJSON.data.tree.length; i += 1) {
entry = objectedJSON.data.tree[i];
console.debug(entry);
if (entry.type === 'blob') {
if (entry.type.slice(-4) === '.svg') { // we only want the svg images not the ignore file and README etc
objectList.append(i.content);
}
} else if (entry.type === 'tree') {
objectList.append(parseTree(getTree(entry.sha)));
}
}
});
return objectList;
}
$(document).ready(function() {
var objects = parseTree('master', function() {
console.debug(objects);
});
});
私は、JSONオブジェクトの罰金を取得するコードを持っているが、それは(別名、私が欲しいのビットを引き抜く)解析された取得しようとしたとき、私はトラブルに実行します。私が使用しているコールバックは行っていないようで、誰かがそれを見て私を助けてくれるのだろうかと思っていました。
具体的には、私が選択した関数にコールバックを追加できますか?私はその機能に何かをしなければならないのですか?