2012-05-19 12 views
9

Qualche giorno fa io e un amico stavamo giocando con la console Javascript in Chrome (usando una versione leggermente più vecchia, ma questa può essere ripetuta nell'ultima build stabile su OSX e Windows) quando abbiamo assegnato una stringa alla variabile $ x.

$x = "hello" 

ma quando abbiamo eco il valore di $ x, otteniamo dato il seguente codice nella 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; 
    } 
} 

abbiamo ottenuto un risultato simile nelle versioni stabili di Safari e Firefox. Per quanto ne sappiamo, la variabile $ x non è collegata all'oggetto della finestra globale.

Che cos'è $ x e a cosa serve?

risposta

9

Questa è una funzione di utilità XPath. Dalla fine Firebug manual:

$x(xpath)
restituisce un array di elementi che hanno dato espressione XPath.

E dal fine Chrome manual:

$x(xpath)
restituisce un array di elementi DOM che hanno dato espressione XPath.

La funzione $x non fa parte di JavaScript, è solo un'utilità disponibile nella console. Se si tenta di accedere a $x al di fuori della console (http://jsfiddle.net/ambiguous/fsewU/), si otterrà un'eccezione ReferenceError a meno che, naturalmente, non sia stato definito il proprio $x da qualche parte.

1

sembra essere legato alla XPath (XML Path Language) .... Un aiutante di sorta ... ho trovato un link che può tornare utile .. http://userscripts.org/topics/26131 Speranza che aiuta ..

+0

+1. per quello che vale, Firebug in Firefox fa anche la stessa cosa con '$ x'. – Spudley

Problemi correlati