Convert RGBA into depth outside quesition?

I use MeshDepthMaterial RGBADepthPacking and WebGLRenderTarget to save the scene contents and then read the depth information, but the depth value is greater than 1, right?

depthBuffer is uint8array from readRenderTargetPixels

unpackDownscale = ( 255. / 256. );

unpackFactors = new Vector4(unpackDownscale / ( 256. * 256. * 256. ),unpackDownscale / ( 256. * 256. ),unpackDownscale / 256.,unpackDownscale / 1. );

tempVec4.set(depthBuffer[ index + 0 ],depthBuffer[ index + 1 ],depthBuffer[ index + 2 ],depthBuffer[ index + 3 ] );

var depth = this.tempVec4.dot( this.unpackFactors );

It shouldnt be greater than one otherwise it wont work.