老师检查代码

来源:2-11 编程练习

3颗猫饼干

2021-12-13 17:39:53

相关代码:

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

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>2-11</title>
</head>

<body>
    <script>
        // (1)给对象obj添加Symbol.iterator方法。
        // (2)Symbol.iterator方法内部定义变量表示遍历次数,并返回一个对象。
        // (3)返回的对象中设置next方法。
        // (4)在next方法中通过判断设置对应的返回值。

        const obj = {
            "0": "xm",
            "sex": "male",
            length: 2
        }
        console.log(obj);
        obj[Symbol.iterator] = () => {
            let idx = 0;
            return {
                next() {
                    idx++;
                    if (idx === 1) {
                        return {
                            value: obj['0'],
                            done: false
                        };
                    } else if (idx === 2) {
                        return {
                            value: obj.sex,
                            done: false
                        };
                    } else if (idx === 3) {
                        return {
                            value: obj.length,
                            done: false
                        };
                    } else {
                        return {
                            value: undefined,
                            done: true,
                        };
                    }
                }
            }
        }
        for (const item of obj) {
            console.log(item);
        }
    </script>
</body>

</html>


写回答

1回答

好帮手慕然然

2021-12-13

同学你好,代码实现很正确,继续加油,祝学习愉快!

0

0 学习 · 17877 问题

查看课程