Espressione with ECMAScript

Esercizio etichettato

L'espressione with viene utilizzata per impostare l'ambito del codice su un oggetto specifico.

La sua sintassi:

with (expression) statement

Ad esempio:

var sMessage = "hello";
with(sMessage) {
  alert(toUpperCase());	//Esce "HELLO"
}

In questo esempio, l'espressione with è utilizzata per una stringa, quindi quando si chiama il metodo toUpperCase(), l'interprete controllerà se il metodo è una funzione locale. Se non lo è, controllerà il pseudo-oggetto sMessage per vedere se è un metodo di quell'oggetto. Poi, l'alert esce "HELLO", perché l'interprete ha trovato il metodo toUpperCase() della stringa "hello".

Suggerimento:L'espressione with è un blocco di codice lento, specialmente quando sono stati impostati valori di attributo. Nella maggior parte dei casi, se possibile, è meglio evitarlo.