code: function parseOutput(str, callback) {
    var err = null;
  
    try {
      var lines      = str.split('\n');
      var wifis = [];
      
      for (var i = 1, l = lines.length; i < l; i++) {
        var mac = lines[i].match(macRegex);
        if (!mac) {
          continue;
        }
        var macStart = lines[i].indexOf(mac[0]);
        var elements = lines[i].substr(macStart).split(/[ ]+/);
        wifis.push({
          'ssid'    : lines[i].substr(0, macStart).trim(),
          'mac'     : elements[0].trim(),
          'channel' : parseInt(elements[2].trim(), 10),
          'rssi'    : parseInt(elements[1].trim(), 10)
        });
      }
    }
    catch (ex) {
      err = ex;
    }
  
    callback(err, wifis);
  }
docs: Parsing the output of airport (Mac OS X)
  @param str output of the tool
  @param callback