code: function (length, byteOffset, littleEndian) {
  		littleEndian = defined(littleEndian, this._littleEndian);
  		byteOffset = defined(byteOffset, this._offset);
  		length = defined(length, this.byteLength - byteOffset);
  
  		this._checkBounds(byteOffset, length);
  
  		byteOffset += this.byteOffset;
  
  		this._offset = byteOffset - this.byteOffset + length;
  
  		var result = (
  			this._isArrayBuffer
  			? new Uint8Array(this.buffer, byteOffset, length)
  			: (this.buffer.slice || Array.prototype.slice).call(this.buffer, byteOffset, byteOffset + length)
  		);
  
  		return littleEndian || length <= 1 ? result : arrayFrom(result).reverse();
  	}
docs: Helpers