Qual é a variável $ x usada no Chrome?
Há alguns dias, um amigo e eu estávamos brincando com o console Javascript no Chrome (usando uma versão um pouco mais antiga, mas isso pode ser repetido na última versão estável no OSX e no Windows) quando atribuímos uma string à variável $ x .
$x = "hello"
mas quando ecoamos o valor de $ x, recebemos o seguinte código no console:
bound: function (xpath, context)
{
var doc = (context && context.ownerDocument) || inspectedWindow.document;
var result = doc.evaluate(xpath, context || doc, null, XPathResult.ANY_TYPE, null);
switch (result.resultType) {
case XPathResult.NUMBER_TYPE:
return result.numberValue;
case XPathResult.STRING_TYPE:
return result.stringValue;
case XPathResult.BOOLEAN_TYPE:
return result.booleanValue;
default:
var nodes = [];
var node;
while (node = result.iterateNext())
nodes.push(node);
return nodes;
}
}
Conseguimos uma saída semelhante em versões estáveis do Safari e do Firefox. Até onde podemos dizer, a variável $ x não está anexada ao objeto de janela global.
O que é $ x e para que é usado?