Aceptando que (1) quiero usar un diagrama de secuencia y no una clase, comunicación o cualquier otro diagrama y (2) no estoy usando la especificación UML oficial y estoy preparado para cambiar las reglas, la pregunta es: ¿Es posible demostrar ¿Se pasa un objeto como argumento a una llamada de función en otro objeto? Por ejemplo, en el fragmento a continuación, la función "agregar" de objeto1 toma el argumento "objeto2" (agregando sus respectivas propiedades), pero el diagrama oculta el hecho. ¿Sería aceptable lo anterior? Si es así, ¿cuál es la mejor manera de hacerlo?
var object1 = new O("object1"); var object2 = new O("object2"); object1.add(object2); alert(object1.name); // object1 + object2 function O(param) { this.name = param; this.add = function(param) { this.name = this.name + " + " + param.name; }; }En su ejemplo, la única comunicación entre object1 y object2 es que object1 obtiene el nombre de object2. Puede visualizar esto dibujando una flecha desde la línea de vida del objeto 1 hasta la línea de vida del objeto 2, con la etiqueta "obtener nombre".
En la práctica, los captadores generalmente no se visualizan, porque demasiados detalles pueden ofuscar el flujo principal. El hecho de que muestre que object2 se pasa como argumento de un mensaje a object1, ya implica que object1 hará algo con object2.