0

以下のコードは、JSON の結果を文字列に連結できないようですが、その理由は誰にもわかりませんか?

function wordCloud(filename)
{
    var file = filename;
    var text = " ";
    $.getJSON(file, function(data) {
        $.each(data, function(key, val) {
            text = text.concat(val.toString());
        });
    });
    console.log(text);
 }

ありがとう

4

1 に答える 1

1

console.log正常に実行されますが、get ステートメント内に追加する必要があるだけです。そうしないと、getJSON コードが非同期で実行され、その間、コントロールが console.log ステートメントに到達しtextても空のままです。したがって、次の方法でコードを変更する必要があります。

$.getJSON(file, function(data) {
    $.each(data, function(key, val) {
        text = text.concat(val.toString());
    });
    console.log(text);
});
于 2013-02-16T20:32:58.910 に答える