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

删除素组中的非“*”的项没明白!

 var  arr = ['*','##',"***","&&","****","##*"];

    arr[7] = "**";

    //数组长度

    var l = arr.length;   

    //删除数组中非*的项

    var i = 0;

    for(; i < l; i++){

        var val = arr[i];

        if(val != undefined) {

            var newarr = val.split('');

            var newl = newarr.length;

            for(var j = 0; j < newl; j++){

                if(newarr[j] != '*'){

                    arr.splice(i, 1);

                    break;

                }

            }

        }

    }

这个里面   就arr.splice(i,1)这一块没明白,为什么到arr这个数组了,用arr.splice怎么删除掉了不“*”项的,我在break;上面用alert输出一下,好像没删除完不全是“*”的项?????求解,求解!!!!!!!

正在回答

2 回答

for多了个分号改了试试

0 回复 有任何疑惑可以回复我~

http://img1.sycdn.imooc.com//58252a6e0001dd8e05510403.jpg每一项输出的结果也不清楚,图片上有输出的结果;第二个红框里面出来的结果,是这样理解吗?val=arr[i]每一项的值,然后在对这个值进行分割成数组,然后赋给newarr,newarr数组=["['*']","['#','#']","['&','&']","['#','#','*']","['*','*']"];第三个红框怎么回事,不应该是newarr这个数组的值吗?怎么是一项一项的长度??????

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

删除素组中的非“*”的项没明白!

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信