• <var id="zvtmq"></var>
      <tt id="zvtmq"><pre id="zvtmq"></pre></tt>

      <font id="zvtmq"></font>

      <tt id="zvtmq"></tt>

        <var id="zvtmq"></var>
        <mark id="zvtmq"><pre id="zvtmq"><td id="zvtmq"></td></pre></mark>

        1. 
          

          <var id="zvtmq"><object id="zvtmq"><noscript id="zvtmq"></noscript></object></var><label id="zvtmq"><button id="zvtmq"><address id="zvtmq"></address></button></label>

            <tt id="zvtmq"><wbr id="zvtmq"></wbr></tt>
            <strike id="zvtmq"><output id="zvtmq"></output></strike>

          1. <del id="zvtmq"><wbr id="zvtmq"><meter id="zvtmq"></meter></wbr></del>

          2. <small id="zvtmq"></small>

            <code id="zvtmq"><rt id="zvtmq"></rt></code>
          3. <listing id="zvtmq"><object id="zvtmq"></object></listing>

                  JavaScript 数组随机不重复元素

                  2019-2-28 19:29| 作者: 蚂蚁小编| 查看: 761| 评论: 1|来自: 蚂蚁部落

                  实际应用可能需要从数组元素中随机取出几个元素,并且要保证这几个元素不重复。

                  有些数组可能有重复的元素,那么可能需要首先去除这些重复的元素。

                  下面是实现此效果的代码:

                  [JavaScript] 纯文本查看 复制代码运行代码
                  var theArray=[1,3,2,4,5,9,10,20,15];
                  function done(num,arr){
                    var newArray=[];
                    for(var index=0;index<num;index++){
                      var n=Math.floor(Math.random()*theArray.length);
                      newArray.push(theArray[n]);
                      theArray.splice(n,1);
                    }
                    return newArray+"";
                  }
                  console.log(done(2,theArray));

                  上面代码实现了我们的要求,下面介绍一下它的实现过程。

                  一.代码注释:

                  (1).var theArray=[1,3,2,4,5,9,10,20,15],声明一个数组,将会从此数组取元素。

                  (2).function done(num,arr){},此函数实现了取出指定个数不重复元素效果,第一个参数是要取的个数,第二个是数组对象。

                  (3).var newArray=[],声明一个空数组,用来存放取出的元素。

                  (4).for(var index=0;index<num;index++){},取出指定个数的数组元素,这里采用for循环遍历的方式。

                  (5).var n=Math.floor(Math.random()*theArray.length),通过随机数*数组的长度可以获取随机的数组索引,并将其存入变量n。

                  (6).newArray.push(theArray[n]),将获取的数组元素存入新的数组。

                  (7).theArray.splice(n,1),删除此索引位置的数组元素。

                  (8).return newArray+"",将数组转换为字符串并返回。

                  二.代码注释:

                  (1).Math.floor方法参阅JavaScript Math.floor()一章节。 

                  (2).Math.random方法参阅JavaScript Math.random()一章节。 

                  (3).push方法参阅JavaScript push()一章节。 

                  (4).splice方法参阅JavaScript Array splice()一章节。 


                  鲜花

                  握手

                  雷人
                  1

                  路过

                  鸡蛋

                  刚表态过的朋友 (1 人)

                  发表评论

                  最新评论

                  引用 gy55you 2019-4-12 13:40
                  h.floor(Math.random()*theArray.length),通过随机数*数组的长度可以获取随机的数组索引,并将其存入变量n。

                  (6).newArray.push(theArray[n]),将获取的数组元素存入新的数组。

                  (7).theArray.splice(n,1),删除此索引位置的数组

                  查看全部评论(1)

                  返回顶部
                1. <var id="zvtmq"></var>
                    <tt id="zvtmq"><pre id="zvtmq"></pre></tt>

                    <font id="zvtmq"></font>

                    <tt id="zvtmq"></tt>

                      <var id="zvtmq"></var>
                      <mark id="zvtmq"><pre id="zvtmq"><td id="zvtmq"></td></pre></mark>

                      1. 
                        

                        <var id="zvtmq"><object id="zvtmq"><noscript id="zvtmq"></noscript></object></var><label id="zvtmq"><button id="zvtmq"><address id="zvtmq"></address></button></label>

                          <tt id="zvtmq"><wbr id="zvtmq"></wbr></tt>
                          <strike id="zvtmq"><output id="zvtmq"></output></strike>

                        1. <del id="zvtmq"><wbr id="zvtmq"><meter id="zvtmq"></meter></wbr></del>

                        2. <small id="zvtmq"></small>

                          <code id="zvtmq"><rt id="zvtmq"></rt></code>
                        3. <listing id="zvtmq"><object id="zvtmq"></object></listing>

                                快乐10分破解如何计算
                              1. <var id="zvtmq"></var>
                                  <tt id="zvtmq"><pre id="zvtmq"></pre></tt>

                                  <font id="zvtmq"></font>

                                  <tt id="zvtmq"></tt>

                                    <var id="zvtmq"></var>
                                    <mark id="zvtmq"><pre id="zvtmq"><td id="zvtmq"></td></pre></mark>

                                    1. 
                                      

                                      <var id="zvtmq"><object id="zvtmq"><noscript id="zvtmq"></noscript></object></var><label id="zvtmq"><button id="zvtmq"><address id="zvtmq"></address></button></label>

                                        <tt id="zvtmq"><wbr id="zvtmq"></wbr></tt>
                                        <strike id="zvtmq"><output id="zvtmq"></output></strike>

                                      1. <del id="zvtmq"><wbr id="zvtmq"><meter id="zvtmq"></meter></wbr></del>

                                      2. <small id="zvtmq"></small>

                                        <code id="zvtmq"><rt id="zvtmq"></rt></code>
                                      3. <listing id="zvtmq"><object id="zvtmq"></object></listing>

                                            1. <var id="zvtmq"></var>
                                                <tt id="zvtmq"><pre id="zvtmq"></pre></tt>

                                                <font id="zvtmq"></font>

                                                <tt id="zvtmq"></tt>

                                                  <var id="zvtmq"></var>
                                                  <mark id="zvtmq"><pre id="zvtmq"><td id="zvtmq"></td></pre></mark>

                                                  1. 
                                                    

                                                    <var id="zvtmq"><object id="zvtmq"><noscript id="zvtmq"></noscript></object></var><label id="zvtmq"><button id="zvtmq"><address id="zvtmq"></address></button></label>

                                                      <tt id="zvtmq"><wbr id="zvtmq"></wbr></tt>
                                                      <strike id="zvtmq"><output id="zvtmq"></output></strike>

                                                    1. <del id="zvtmq"><wbr id="zvtmq"><meter id="zvtmq"></meter></wbr></del>

                                                    2. <small id="zvtmq"></small>

                                                      <code id="zvtmq"><rt id="zvtmq"></rt></code>
                                                    3. <listing id="zvtmq"><object id="zvtmq"></object></listing>