问答详情
源自:7-23 编程练习

从字符串中提取那些分数的字符,如何转换成数值?

 var scoreStr = "小明:87;小花:81;小红:97;小天:76;小张:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76";
  var fenge=scoreStr.split(";");
/*问题一:split是以;为分隔符分隔字符串,得到的是
  小明:87,小花:81,小红:97,小天:76,小张:74,小小:94,小西:90,小伍:76,小迪:64,小曼:76
而得到的这个是一个还是字符串还是一个数组?*/
  var num=new Array(); 
  for(var i=0; i<fenge.length;i++){
      num[i]=fenge[i].substring(fenge[i].indexof(":")+1);
/*这个就更看不懂了,哪位大神可以解释下*/
      document.write(num[i]+"<br/>");
      }


提问者:精慕门4438460 2016-05-18 14:57

个回答

  • 明哥思密达
    2016-05-21 11:03:35

    parseInt()

  • 精慕门4438460
    2016-05-18 20:54:39

    fenge=["小明:87","小花:81","小红:97","小天:76","小张:74","小小:94","小西:90","小伍:76","小迪:64","小曼:76"];
    //如果是数组,我就是我写的这样fenge[0]="小明:87"
    num[0]=fenge[0].substring(fenge[0].indexOf(":")+1);
    //进行拆分
    //a=fenge[0].indexOf(":")=3
    //b=fenge[0].indexOf(":")+1=a+1=4
    //c=fenge[0].substring(fenge[0].indexOf(":")+1)=从第五个字符开始提取,也就是87
    //关于你提出的substring(),最后加一个末尾的长度,其实效果是一样的,如果不加的话,它默认的就是一致检索到末尾。

  • 纳兰容若3373109
    2016-05-18 15:18:58

    得到的是数组
    num[i]=fenge[i].substring(fenge[i].indexof(":")+1);这段代码写的不对;

    他截取的是名字而不是分数 ,  分数获取可以是
    num[i]=fenge[i].substring((fenge[i].indexof(":")+1),fenge[i].length);

    或者是var peopleInfo = fenge[i].split(":");

    num[i] = peopleInfo[1];