В общем, дело касатется HTML-парсера.
Каждый тэг представляется как токен:
function Token(name, attributes) {
/** @member {String} */
this.name = name;
/** @member {Array} */
this.attributes = attributes;
}
Каждый токен отправляется на обработку в функцию. Сейчас это сделано так:
/**
* @param {String} name
* @param {Array} attributes
*/
function processStartTag(name, attributes) {}
processStartTag(token.name, token.attributes);
Вопрос: насколько эффективней будет отрефакторить код так:
/**
* @param {Token} token
*/
function processStartTag(token) {}
processStartTag(token);
Ведь по идее в первом варианте строка постоянно копируется. В случае с объектом будет просто передаваться ссылка на объект.