Converter string para Pascal Case (também conhecido como UpperCamelCase) em Javascript

Eu gostaria de saber como posso converter uma string em uma string pascal em javascript (e provavelmente o regex).

Exemplos de conversão:

barril duplo = barril duploDOUBLE-BARREL = Barril DuploDoUbLE-BaRRel = barril duplobarril duplo = barril duplo

Verificaesse link para mais informações sobre o caso Pascal

questionAnswers(2)

yourAnswerToTheQuestion