0

var timer = {display:'x', at:'12/23/2016', in : 3000000}; var text = timer.display + " on " + timer.at + ". Time Remaining : " + timer.in;

throws error in IE8 "Expected identifier, string or number"

var text = timer.display + " on " + timer.at + ". Time Remaining : " + timer['in']; works!!!

This works fine in chrome, is .in a keyword and why only IE8 behaving weird?

Suresh Nagar
  • 1,021
  • 9
  • 20

1 Answers1

0

Isn't in considered as a keyword? You could use:

var timer = {"display":"x", "at":"12/23/2016", "in" : "3000000"};
var text = timer.display + " on " + timer.at + ". Time Remaining : " + timer["in"];

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar#Keywords

Renaud C.
  • 535
  • 2
  • 14
  • in is keyboard but i was wandering its .in as obj.in, when used as keyword it is (var x in obj) not obj.in, and why it works fine in chrome, i was asking if "dot_in" is also considered keyword? – Suresh Nagar Jul 15 '15 at 23:43
  • i think this might answer your questions: http://stackoverflow.com/questions/7022397/using-reserved-words-as-property-names-revisited – Renaud C. Jul 17 '15 at 07:14