• 处理集合_创建Set


    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>创建Set</title>
        <script src="../unitl/test.js"></script>
        <style>
            #results li.pass {color:green;}
            #results li.fail {color:red;}
        </style>
    
    
    </head>
    
    <body>
    
    
        <div id="firstElement"></div>
        <div id="secondElement"></div>
        <ul id="results"></ul>
    
    
    </body>
    
    <script>
    
        //Set 不能存在相同的元素,Set成员的值都是唯一的。
        const ninjas = new Set(["Kuma","Hattori","Yagyu","Hattori"]);
    
    
        //丢弃重复项
        assert(ninjas.has("Hattori"),"Hattori is our set");
        assert(ninjas.size ===3,"There are only three ninjas in our set !");
    
    
        //可以向集合中添加不存在的元素
        assert(!ninjas.has("Yoshi"),"Yoshi is not in yet..");
        ninjas.add("Yoshi");
        assert(ninjas.has("Yoshi","Yoshi is added"));
        assert(ninjas.size ===4, "There are four ninjas in our set");
    
    
        //向集合中添加存在的元素将补齐任何作用。
        assert(ninjas.has("Kuma"),"Kuma is already added");
        ninjas.add("Kuma");
        assert(ninjas.size === 4,"Adding Kuma again has no effect");
    
        //通过for...of 循环对集合进行遍历。
        for(let ninja of ninjas) {
    
            assert(ninja !== null,ninja);
    
        }
    </script>
    </html>
    

    //使用内置构造函数创建Set,如果不传入任何参数,将创建一个空Set。可以传入字符串:

          new Set(["Kuma","Hattori","Yagyu","Hattori"]);
    

    Set成员的值都是唯一的,最重要的作用是避免存储多个相同的对象。在本例子中,视图添加两次"Hattori",但是只成功添加一次。
    Set具有多个可访问的方法。例如:has方法验证Set中是否存在元素:

          ninjas.has("Hattori")
    

    add 方法用于添加唯一成员:

         ninjas.add("Yoshi")
    

    如果你想知道Set中具有几个元素,可以使用size属性。与Map和数组类似,Set也是集合,因此可以使用for-of循环进行遍历。

  • 相关阅读:
    百练 1936 ll in All 解题报告
    百练 2804 词典 解题报告
    POJ 1226 Substrings 解题报告
    百练 2797 最短前缀 解题报告
    百练 2743 字符串判等 解题报告
    java创建线程的两种方式
    使用.Net Remoting传送Image对象
    Links [IronPython Workflow WCF]
    Hello World!
    Links [ .Net 3.0 Atlas ]
  • 原文地址:https://www.cnblogs.com/jamal/p/14085686.html
Copyright © 2020-2023  润新知