好像一层for循环就能搞定了,老师帮忙找下Bug?谢谢

好像一层for循环就能搞定了,老师帮忙找下Bug?谢谢

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <title>二维数组</title>
</head>

<body>
    <script>
        var arr = [
            ["小慕", "男", 23],
            ["小欧", "女", 22],
            ["小课", "男", 24],
            ["小时", "女", 22],
            ["紫妈", "女", 1145141919819],
            ["小码", "女", 20]
        ]
        var newArr = [];
        // 补充代码
        for (i = 0; i < arr.length; i++) {
            if (arr[i].includes("女")) {
                newArr.push(arr[i]);
            }
        }
        console.log(newArr);

    </script>
</body>

</html>

正在回答

登陆购买课程后可参与讨论,去登陆

3回答

没问题哦,解题思路是这样的,一层就够拉,先通过arr[i]来遍历里面的每一项,然后通过includes方法来判断指定的数组里是否包含 '女' ,如果有,直接把这项推入到新数组newArr中,最后输入newArr,实现很好呢,看不出啥毛病

好帮手慕然然 2021-09-22 09:47:04

同学你好,@怒焰狂暴同学回答的没问题,一层for循环+includes方法就可以实现。

如果要使用for循环嵌套实现的话,同学可以参考以下代码,如图

https://img1.sycdn.imooc.com//climg/614a8afb09ac16e508240873.jpg

祝学习愉快!

能量咕噜略略 2021-09-20 17:47:16

我看了下老师的解题思路,老师把所有的都遍历出来,得到的就是字符串了,然后通过匹配里面的每一项【所以需要两层for循环】,如果有出现'女'的,就把外层的一整个数组推入新数组中,两种解题思路都行呢,个人感觉,你这种方法效率更高,少了一层for循环,直接通过includes来判断数组中是否包含这项内容。

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

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

帮助反馈 APP下载

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

公众号

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

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师