JS 对数组的常用处理
2024-08-25 02:19:25
首先写游戏的时候,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);
}
最新文章
- jQuery Scroll Follow
- 轻松搞定javascript预解析机制(搞定后,一切有关变态面试题都是浮云~~)
- html之大白
- JQuery下CheckBox全选全不选反选
- 转:设计模式-----桥接模式(Bridge Pattern)
- 京东校招笔试(C++方向)编程题
- angular $apply()以及$digest()讲解
- Nginx+keepalived实现负载均衡
- Apache virtualhost 配置
- 解决SDK Manager无法更新问题
- 【Unity Shaders】Diffuse Shading——创建一个自定义的diffuse lighting model(漫反射光照模型)
- window bat 切换目录并执行php文件
- spring使用注解通过子类注入父类的私有变量
- Python中类的定义及使用
- iOS开发之一句代码检测APP版本的更新
- 论文笔记系列-DARTS: Differentiable Architecture Search
- maven子项目的springboot配置
- 20169207《linux内核原理与分析》第二周作业
- 【HDU 3590】 PP and QQ (博弈-Anti-SG游戏,SJ定理,树上删边游戏)
- ExtJs 扩展类CheckColumn的使用(事件触发)