ouyadi
ouyadi

Reputation: 485

SyntaxError: missing ) after for-loop control(JSON)

Below is JSON , i try to go through the arrays from 1 to 4, and firebug return me error

SyntaxError: missing ) after for-loop control
[Break On This Error]   

for( x in LGIntake.corpCodeOptions.marketSegment.1){

StartI...aseId=0 (line 675, col 50)

LGIntake = {};
LGIntake.corpCodeOptions = {};
LGIntake.corpCodeOptions.marketSegment = {
"1":[["FEP","FEP"],["HA","HA"],["HWB","HWB"],["JG","JG"],["LG","LG"],
     ["MAC","MAC"],["NAC","NAC"],["NAL","NAL"],["NAP","NAP"],["NAU","NAU"]],
"2":[["ERS","ERS"],["FEP","FEP"],["HRP","HRP"],["LGC","LGC"],["LGL","LGL"],
     ["MGC","MGC"],["MGL","MGL"],["NAC","NAC"],["NAP","NAP"],["NPB","NPB"],
     ["NPH","NPH"],["NPI","NPI"],["NPP","NPP"],["NPR","NPR"],["NPS","NPS"],
     ["NRSG","NRSG"],["SRK","SRK"],["TAC","TAC"],["TCF","TCF"],["TCI","TCI"],
     ["THE","THE"],["TRS","TRS"]],
"3":[["AFG","AFG"],["ALI","ALI"],["APS","APS"],["FEP","FEP"],["HSC1","HSC1"],
     ["HSC2","HSC2"],["LAN","LAN"],["LGN","LGN"],["NAP","NAP"],["PAK","PAK"],
     ["PSA","PSA"],["RA","RA"],["RC","RC"]],
"4":[["COMA","COMA"],["FEP","FEP"],["LG","LG"],["NAC","NAC"],["NAP","NAP"],
     ["NRMM","NRMM"],["NRSG","NRSG"],["ORAA","ORAA"]]
}; 

and my javascript code

function initMarketSegment(corpCode){
    var corpCodeList = new Array();
    if(corpCode == "1"){
        for( x in LGIntake.corpCodeOptions.marketSegment.1){
            marketSegment.option[marketSegment.option.length] = new Option('LGIntake.corpCodeOptions.marketSegment.1[x]','LGIntake.corpCodeOptions.marketSegment.1[x]');
        }
    }
    else if(corpCode == "2"){
        for( x in LGIntake.corpCodeOptions.marketSegment.2){
            marketSegment.option[marketSegment.option.length] = new Option('LGIntake.corpCodeOptions.marketSegment.2[x]','LGIntake.corpCodeOptions.marketSegment.2[x]');
        }
    }
    else if(corpCode == "3"){
        for( x in LGIntake.corpCodeOptions.marketSegment.3){
            marketSegment.option[marketSegment.option.length] = new Option('LGIntake.corpCodeOptions.marketSegment.3[x]','LGIntake.corpCodeOptions.marketSegment.3[x]');
        }
    }
    else if(corpCode == "4"){
        for( x in LGIntake.corpCodeOptions.marketSegment.4){
            marketSegment.option[marketSegment.option.length] = new Option('LGIntake.corpCodeOptions.marketSegment.4[x]','LGIntake.corpCodeOptions.marketSegment.4[x]');
        }   
    }
}

Upvotes: 0

Views: 1227

Answers (1)

villecoder
villecoder

Reputation: 13494

According to the EMCAScript 5.1 specification, javascript identifiers cannot start with a number. So the "1" property is not a valid identifier in your JSON. However, you could reference it as LGIntake.corpCodeOptions.marketSegment[1].

See http://mathiasbynens.be/notes/javascript-identifiers#valid-identifier-names for details.

Upvotes: 2

Related Questions