foreach 方法的 val idx set 的参数是怎么传进去的?

来源:2-10 Set的应用

weixin_慕尼黑0465866

2023-03-02 10:44:35

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

<head>
    <meta charset="UTF-8" />
    <title></title>
</head>

<body>
    <script>
        //在此添加代码
        const s = new Set([1, 2, 1])
        console.log(s)
        s.forEach(function(val, idx, set){
            
        })
    </script>
</body>

</html>
写回答

1回答

好帮手慕小李

2023-03-02

同学你好,解答如下:

当forEach在被使用时,function(val, idx, set)就是作为callbackFn传入forEach,那么作为callbackFn被调用时候带有三个参数,也就是指val(正在处理的当前元素)idx(正在处理的当前元素的索引)set(forEach()方法正在操作的数组)

在官方定义中val、idx、set实际它们会被写成element、index、array(这样更好被理解)同学也可以看看官方的文档https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array/forEach

另使用new Set([1, 2, 1])会导致最终的结果只输出1,2原因是new Set将[1,2,1]转为对象,这里要注意一下Set 中的元素只会出现一次,即 Set 中的元素是唯一的。所以只会输出1,2。

祝学习愉快!

0

前端工程师

前端入门如同写字,如果你不知道从哪开始,那就选择前端(含Vue3.x,React17,TS)

20327 学习 · 17877 问题

查看课程