CVTE2017年暑期前端实习-笔试题(驼峰命名转换)

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>驼峰命名转换</title>
<body>
<!---编写一个函数fn(str),将驼峰命名的字符串转换为“aa_aa”,
      例如(HelloWorld转化为hello_world). --->
</body>
    <script>
    //得到大写字母在字符串中的索引值 存入数组中
    function Get_Upper_Index(Str){
        var Arr=[];
        for(var i=0;i<Str.length;i++){
          var Is_Upper=/^[A-Z]/.test(Str[i]);//判断是不是大写字母
            if(Is_Upper){
                Arr.push(i);
                //alert('Str:'+Str[i]+'索引值:'+i);
                }
            }
        return Arr;
    }
      function fn(Str){
        var Arr=Str.split('');
        var IndexList=Get_Upper_Index(Str);
           for(var j=0;j<IndexList.length;j++){
           if(IndexList[j]!=0){
                Arr.splice(IndexList[j],0,'-');
                //splice函数在字符串总添加(0)或删除元素(number)
                IndexList=Get_Upper_Index(Arr);
                //添加过后重新查找大写的索引
               }
           }
        var res=Arr.join('').toLowerCase();
        alert(res);
      }
     //测试样例
    fn('HelloWorldILikeYouAndYou');
 </script>
</html>
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值