02
17
02
01
为了账号安全,请及时绑定邮箱和手机立即绑定

想从数组中筛选出只有*的项,求大神帮我看看下面代码哪里有问题

想从数组中筛选出只有*的项,求大神帮我看看下面代码哪里有问题

慕粉3415418 2016-06-02 21:37:28
<script type="text/javascript">    function myarr(){      var arr=Array('*','##',"***","&&","****","##*","*#*");          arr[7]="**";      var arr1=Array();      var j=0;      for(var i=0;i<arr.length;i++)      {         document.write(arr[i]+"<br/>");        if(arr[i]!=undefined){         arr1[j]=arr[i];         j++;        }      }      document.write(arr1+"<br/>");      for(var m=0;m<arr1.length;m++)      {         var newarr = arr1.split('');        for(var n=0;n<newarr.length;n++)        {          if(arr2[n]!="*")            {arr1.splice(i,1);break;}        }        document.write(arr1+"<br/>");      }    }    myarr();  </script>

1 回答

?
mingsixue

TA贡献19条经验 获得超32个赞

错误地方:var newarr = arr1.split(''); 数组分割成数组??

简单的用indexOf查找下有没有*,不用你上面那么多的for循环

1
2
3
4
5
for(var i = 0; i < arr.length; i++) {
  if (arr[i].indexOf('*') != -1) {
     document.write(arr[i]+"<br/>");
  }
}


查看完整回答
反对 回复 2016-06-02
  • 慕粉3415418
    慕粉3415418
    谢谢亲!原来如此,我使用arr[i].indexOf('*')无法筛选出##*,*#*,我可不可以定义个变量进行复制来操作, var str=arr1[i]; var myarray=str.split("");
  • mingsixue
    mingsixue
    可以筛选出来的呀。 你定个变量也是可以的,不过感觉有点多此一举。

添加回答

代码语言

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号