Je me suis aperçu d'une utilisation assez singulière de la chaine de portées avec l'instruction with, qui permet de limiter la répétition à outrance de l'endroit ou sont situées des propriétés ou méthodes.

var square = {x:10, y:10, w:100, h:100};<br />
with( square ) {<br />
 with( drawClip = this.createEmptyMovieClip("sq",10) ) {<br />
           _x = x;<br />
           _y = y;<br />
           lineStyle(0,0);<br />
           moveTo(0, 0);<br />
             lineTo(w, 0);<br />
             lineTo(w, h);<br />
             lineTo(0, h);<br />
             lineTo(0,0);<br />
      }<br />
}

Ces deux with imbriqués rajoutent à la chaîne de portées (dans l'ordre de recherche) : le clip crée (sq) et l'objet square. Donc, les instructions vont chercher d'abord dans le clip, et y trouver les méthodes et propriétés _x, _y, lineStyle, moveTo, etc... puis dans l'objet, pour y trouver les propriétés x, y, etc... Et voila, aucune portée n'est répétée à chaque ligne ! 8)

Par contre, cette imbrication est à utiliser avec précaution, étant donné que si le clip possède une propriété ayant le même nom qu'une propriété de l'objet square, c'est celle du clip qui sera utilisée en priorité ... 8|