Javascript 错误:[$parse:syntax]语法错误:令牌'';这是一个意外的标记

Javascript 错误:[$parse:syntax]语法错误:令牌'';这是一个意外的标记,javascript,arrays,angularjs,Javascript,Arrays,Angularjs,完整的错误消息是: 错误:[$parse:syntax]语法错误:Token',是表达式[“严重后果率”、“住院率”]第23列的意外标记,从[,“住院率”]开始 我将一组数据转换成一个数组,然后使用Angular ng csv指令导出该数组。数组形式的数据的console.log显示以下内容: [“产品名称”,“严重后果率”,“住院率”,“IME严重率”,“DME严重率”,“STALEVO”,“0.004234647”,“0.002063946”,“0.0058004”,“0.00050709”

完整的错误消息是:

错误:[$parse:syntax]语法错误:Token',是表达式[“严重后果率”、“住院率”]第23列的意外标记,从[,“住院率”]开始

我将一组数据转换成一个数组,然后使用Angular ng csv指令导出该数组。数组形式的数据的console.log显示以下内容:

[“产品名称”,“严重后果率”,“住院率”,“IME严重率”,“DME严重率”,“STALEVO”,“0.004234647”,“0.002063946”,“0.0058004”,“0.00050709”,“EXELON”,“0.004005612”,“0.001674727”,“0.00509257”,“0.00044815”,“COMTAN”,“0.000867331”,“0.000536579”,“0.00129375”0.00024444、AZILECT、0.000545076、0.000394459、0.00102432、0.00025449、帕洛代尔、0.000375725、0.000230684、0.0009696、0.00012616、阿坦、0.00035673、0.000210014、0.00078005、0.00033002、REQUIP XL、0.000318172、0.000191126、0.00042839、0.000432、MIRAPEX“0.000217509”、“0.00014421”、“0.000029248”、“0.00004242”、“SINEMET”、“0.000177481”、“0.0001123557”、“0.00019475”、“0.00004321”、“REQUIP”、“0.000151958”、“0.000099112”、“0.0000200999”、“0.00001765”、“SINEMET CR”、“0.000135481”、“0.0000903321”、“0.00013548”、“0”、“SYMMETREL”、“0.000083309”、“0.000045017”、“0.000045017”“0.00017632”、“0.0000544”、“MIRAPEX ER”、“0.000074176”、“0.000074176”、“0.00004945”、“COGENTIN”、“0.00005202”、“0.000020805”、“0.00003236”、“0.00000694”]

这是我的密码:

    var csvArray = csvData.split(',');
    csvArray.pop();

    var fp = grid.$root.find(".ng-grid-buttons");
    var csvDataLinkPrevious = grid.$root.find('.ng-grid-buttons .csv-data-link-span');
    var csvDataLinkPrevious2 = grid.$root.find('.ngHeaderButton2');
    if (csvDataLinkPrevious != null) {csvDataLinkPrevious.remove(); csvDataLinkPrevious2.remove(); }
    var csvDataLinkHtml = "<div class='ngHeaderButton2'></div>";
    csvDataLinkHtml += "<span type='button' ng-csv='"+csvArray+"' filename='data.csv' class='csv-data-link-span'><i class='fa fa-file-excel-o excel-icon'></i></span>";

    $(function() {
      angular.element(document).injector().invoke(function($rootScope, $compile) {
        var link = $compile(csvDataLinkHtml);
        csvDataLinkHtml = link(scope);
        fp.append(csvDataLinkHtml);
      });
    });
var csvArray=csvData.split(',');
csvArray.pop();
var fp=网格。$root.find(“.ng网格按钮”);
var csvDataLinkPrevious=grid.$root.find('.ng grid buttons.csv data link span');
var csvDataLinkPrevious2=网格$root.find('.ngHeaderButton2');
如果(csvDataLinkPrevious!=null){csvDataLinkPrevious.remove();csvDataLinkPrevious2.remove();}
var csvDataLinkHtml=“”;
csvDataLinkHtml+=“”;
$(函数(){
angular.element(document).injector().invoke(函数($rootScope,$compile){
var link=$compile(csvDataLinkHtml);
csvDataLinkHtml=链接(范围);
fp.append(csvDataLinkHtml);
});
});
如果从数组中的每个元素中删除一组引号,则错误消息略有不同:

错误:[$parse:syntax]语法错误:标记“output”是表达式[严重后果率,住院率]第9列的意外标记,起始于[结果率,住院率]


按照dan08的建议,用单引号替换内引号解决了问题。

用单引号替换内引号怎么样?成功了!谢谢dan,不再有错误消息了。现在只需要弄清楚为什么指令没有读取我的数组。。。