extend $.fn or Drupal.ajax.prototype.commands for calling javascript after ajax callbacks
Extending Drupal.ajax.prototype is the way Drupal and almost every contrib handles this.

is there a preferred method or is this just a matter of style?
are there differences in the benefits of each approach?

The preferred method would be the latter. However, note that both methods are not the same. Ajax commands are passed through ajax_render() function, which allows modules to alter the ajax commands by implementing hook_ajax_render_alter(&amp;$commands). If you use the former method, you will see the invoke as the command, which makes it difficult to figure out the exact invoke command.
For Javascript eyes, it's just a matter of $.fn (shorthand for jQuery.prototype) vs Drupal.ajax.prototype.