When you create particles in the JavaScript version, the ParticleCount and PositionBuffer.length don't match the expected result.
Expected result:
ParticleCount: Number of particles in the system
PositionBuffer.length: 2*ParticleCount
Actual result:
ParticleCount: 2 * Number of particles in the system
PositionBuffer.length: ParticleCount
You can check the bug with this testbed implementation: https://gist.github.com/zilluss/219a4c32feb59c3a0222