Ты прав. Этот код:
var ret = []
,xresult = document.evaluate(exp, rootEl, null,
XPathResult.UNORDERED_NODE_ITERATOR_TYPE, null)
,result = xresult.iterateNext();
Может быть переписано как:
var ret = [];
var xresult = document.evaluate(exp, rootEl, null,
XPathResult.UNORDERED_NODE_ITERATOR_TYPE, null);
var result = xresult.iterateNext();
var foo = [];
инициализирует foo как пустой массив.