Это будет находить каждое вхождение символа нижнего регистра, за которым следует символ верхнего регистра, и вставлять пробел между ними:
s = s.replace(/([a-z])([A-Z])/g, '$1 $2');
Для особых случаев, когда встречаются 2 последовательные заглавные буквы (например, ThisIsATest)добавьте дополнительный код ниже:
s = s.replace(/([A-Z])([A-Z])/g, '$1 $2');