Очевидно, это идентично в моей консоли Firebug:
var x = "A", y = x;
x + y === "AA";
и
var x = y, y = "A";
x + y === "AA";
Это стандартное поведение ECMAScript, что порядок не играет роли в разделенных запятыми var
присвоениях?
Редактировать: «Тайна» раскрыта. Сначала я протестировал первый пример, затем очистил консоль и запустил второй. Однако в это время y
и x
уже были определены. Если вы запускаете JSFiddle, предоставленный Дэвидом Томасом, вы всегда получаете «undefinedA». Дело решено.