将字符串大写字母移到最前面,保持相对顺序-JavaScript

我们需要编写一个JavaScript函数,该函数接受带有大写和小写字母的字符串。该函数应该返回一个字符串,所有大写字母都移到该字符串的前面。

例如:如果输入字符串是-

const str = 'heLLO woRlD';

那么输出应该是-

const output = 'LLORDhe wol';

示例

以下是代码-

const str = 'heLLO woRlD';
const moveCapitalToFront = (str = '') => {
   let capitalIndex = 0;
   const newStrArr = [];
   for(let i = 0; i < str.length; i++){
      if(str[i] !== str[i].toLowerCase()){
         newStrArr.splice(capitalIndex, 0, str[i]);
         capitalIndex++;
      }else{
         newStrArr.push(str[i]);
      };
   };
   return newStrArr.join('');
};
console.log(moveCapitalToFront(str));

输出结果

以下是控制台中的输出-

LLORDhe wol