Javascript JScript JSON数组访问

Javascript JScript JSON数组访问,javascript,ajax,json,Javascript,Ajax,Json,我在data.JSON文件中存储了一个JSON数组——我使用了这里为解决类似问题而推荐的代码,请解释为什么稍后在程序中尝试访问该数组时,它会告诉我该数组未定义 var chartData = (function () { var chartData = null; $.ajax({ 'async': false, 'global': false,

我在data.JSON文件中存储了一个JSON数组——我使用了这里为解决类似问题而推荐的代码,请解释为什么稍后在程序中尝试访问该数组时,它会告诉我该数组未定义

    var chartData = (function () {
                var chartData = null;
                $.ajax({
                    'async': false,
                    'global': false,
                    'url': "data.json",
                    'dataType': "json",
                    'success': function (data) {
                        chartData = data;
                    }
             });
             return chartData;
        })();
谢谢你的帮助

编辑;为了访问,我将数组作为dojo图表中的一个系列使用:

尝试初始化var chartData后,我使用它的唯一其他点是:

    chart.addSeries("Name",chartData);
编辑#2;如果有问题,data.json文件的格式如下:

    [#, #, #, ... , #]

我想它应该在设置
async:false
时以某种方式工作。但最好是异步使用它:

function handler(chartData) {
    // all the code here that deals with chartData
}

$.ajax({
    url: "data.json",
    dataType: "json",
    success: handler
});

也许是因为它没有成功?我发现使用console.log(firebug,或chrome或ie中支持它的最新web开发人员面板)进行调试非常有用

您可以尝试使用这段代码来调试它

var chartData = (function () {
            var chartData = null;
            $.ajax({
                'async': false,
                'global': false,
                'url': "data.json",
                'dataType': "json",
                'success': function (data) {
                    console.log('success');
                    console.log(data);
                    chartData = data;
                }
                error: function (data) { console.log('error'); console.log(data); },
         });
         return chartData;
})();

向我们展示您如何尝试访问阵列。更好的是,如果可以,请向我们展示一个工作示例。您是否回显了成功处理程序中返回的
数据
,以验证您是否获得了预期的数据,而不是类似于配置错误的web服务器提供的带有200代码的404页面,等等?尝试了这个,但似乎没有改变任何东西。您能验证服务器端脚本是否正常工作吗?例如,通过跟踪firebug中的错误?另一个常见错误是,您的json实际上是无效的json。无效的json看起来像什么,我如何将其与有效的json区分开来。@Draw:将您的json放在这里:查看json规范以了解正确的语法:@Drew您还可以将数据类型的一部分更改为“文本”,评估错误是否在json解析部分中。否则,您可以尝试同步访问php部件,或使用Firebug(或等效工具)进行调查。您是否有显示错误的链接?感谢您的帮助,很明显,Chrome访问本地文件时出现了问题,如下面的问题: