First, both vectors are converted to cartesian form using the following technique:

`x = magnitude * cos(angle)`

y = magnitude * sin(angle)

Second, the vectors are summed up coordinate-wise.

`result vector = (x1 + x2 , y1 + y2)`

Lastly, the vector is converted back into magnitude/direction form.

`magnitude = sqrt(x`^{2} + y^{2})

angle = atan2(y, x)

A JavaScript implementation can be found at line 167 of this page.