getOutputByName(name, options = {disconnected: false}) {

    if (this.validation) {
      if (!this.enabled) throw new Error("WebMidi is not enabled.");
      if (!name) return;
      name = name.toString();
    }

    if (options.disconnected) {
      for (let i = 0; i < this._disconnectedOutputs.length; i++) {
        if (~this._disconnectedOutputs[i].name.indexOf(name)) return this._disconnectedOutputs[i];
      }
    } else {
      for (let i = 0; i < this.outputs.length; i++) {
        if (~this.outputs[i].name.indexOf(name)) return this.outputs[i];
      }
    }

  }
Returns the first [`Output`](Output) object whose name **contains** the specified string. Note
that the port names change from one environment to another. For example, Chrome does not report
input names in the same way as the Jazz-Plugin does.

@param name {string} The non-empty string to look for within the name of MIDI inputs (such as
those visible in the [`outputs`](#outputs) array).
@param [options] {object}
@param [options.disconnected] {boolean} Whether to retrieve a disconnected output

@returns {Output} The [`Output`](Output) that was found or `undefined` if no output matched
the specified name.

@throws {Error} WebMidi is not enabled.

@since 2.0.0