I have a web app with a JavaScript file using code like the following:
var foo = {a:'b',c:'d',e:'f',};
On my puter, IE9 (9.0.8112.16421) works correctly; the JavaScript is parsed and executed as on Chrome/FF/Safari. Another user claims to have the same version of IE, yet gets this error in the Developer Tools Console:
SCRIPT1028: Expected identifier, string or number
blob.js?modified=1304026278, line 524 character 136
Column 136 is the trailing ma/closing brace for the object literal.
I've 'fixed' the code so the user should have no more problems, but I'm wondering:
What could make the same version of IE on two different puters treat the JavaScript differently?
I have a web app with a JavaScript file using code like the following:
var foo = {a:'b',c:'d',e:'f',};
On my puter, IE9 (9.0.8112.16421) works correctly; the JavaScript is parsed and executed as on Chrome/FF/Safari. Another user claims to have the same version of IE, yet gets this error in the Developer Tools Console:
SCRIPT1028: Expected identifier, string or number
blob.js?modified=1304026278, line 524 character 136
Column 136 is the trailing ma/closing brace for the object literal.
I've 'fixed' the code so the user should have no more problems, but I'm wondering:
What could make the same version of IE on two different puters treat the JavaScript differently?
- as a sidenote, when you place a trailing mar in an array e.g. a,b,c, this array contains 4 not 3 items, the 4th being 'undefined'. Another reason to avoid trailing mars. ( some browsers would say there are 3 and assume the trailing ma is human error ) – Tom J Nowell Commented Oct 3, 2011 at 16:15
2 Answers
Reset to default 22One of the reasons may be that user has pressed the "Compatibility View" button. The trailing ma causes syntax error in IE7 document mode.
Its most likely due to a browser setting suppressing the error on your browser.