zoukankan      html  css  js  c++  java
  • JS 对数组的常用处理

    首先写游戏的时候,JSON字符串转成OBJECT的时候,希望做个数组随机排序的方法如下:

    //用Math.random()函数生成0~1之间的随机数与0.5比较,返回-1或1
    function randomsort(a, b) {
            return Math.random()>.5 ? -1 : 1;
    }
    var arr = [1,2,3,4];
    var arr2 = arr.sort(randomsort);

    此方法如果不太实用的时候,请使用此版

            //随机改变数组的排序
            function randomOrder (targetArray) {
                var arrayLength = targetArray.length;
                //先创建一个正常顺序的数组
                var tempArray1 = [];
                for (var i = 0; i < arrayLength; i ++){
                    tempArray1 [i] = i
                }
                //再根据上一个数组创建一个随机乱序的数组
                var tempArray2 = [];
                for (var x = 0; x < arrayLength; x ++) {
                    //从正常顺序数组中随机抽出元素
                    tempArray2 [x] = tempArray1.splice (Math.floor (Math.random () * tempArray1.length) , 1)
                }
                //最后创建一个临时数组存储 根据上一个乱序的数组从targetArray中取得数据
                var tempArray3 = [];
                for (var y = 0; y < arrayLength; y ++){
                    tempArray3 [y] = targetArray [tempArray2 [y]]
                }
                //返回最后得出的数组
                return tempArray3
            }

    上例用法 randomOrder([1,2,3,4,5,6,7]);

    最常用的根据下标,删除数组中某一个对象或数字。常用ng删除某条类目。

    var a = [1,2,3,4,5,6];
    function delItem(index){
         a.split(index,1);    
    }
  • 相关阅读:
    Binary Tree Maximum Path Sum
    4Sum
    Candy
    Simplify Path
    Max Points on a Line
    ZigZag Conversion
    Two Sum
    Effective_STL 学习笔记(十二) 对STL线程安全性的期待现实一些
    Effective_STL 学习笔记(十一) 理解自定义分配器的正确用法
    Effective_STL 学习笔记(九) 在删除选项中仔细选择
  • 原文地址:https://www.cnblogs.com/ffjiang/p/5112250.html
Copyright © 2011-2022 走看看