code: function (point, i) {
              var series = point.series,
                args = arguments,
                fn = typeof i === 'number' ?
                    // Insert the value in the given position
                  function (key) {
                      var val = key === 'y' && series.toYData ? series.toYData(point) : point[key];
                      series[key + 'Data'][i] = val;
                  } :
                    // Apply the method specified in i with the following arguments as arguments
                  function (key) {
                      Array.prototype[i].apply(series[key + 'Data'], Array.prototype.slice.call(args, 2));
                  };
  
              each(series.parallelArrays, fn);
          }
docs: For simple series types like line and column, the data values are held in arrays like
  xData and yData for quick lookup to find extremes and more. For multidimensional series
  like bubble and map, this can be extended with arrays like zData and valueData by
  adding to the series.parallelArrays array.