JavaScript数组高级操作:排序、打乱与随机数生成

作者:小括号

时间:2026-10-23

浏览:96

本文介绍JavaScript数组的高级用法,包括使用sort方法按条件进行从小到大或从大到小排序,通过随机比较函数实现数组元素的随机打乱,以及编写函数生成指定范围内的随机整数。

文章目录

JavaScript数组基础与高级操作概述

本文通过具体示例展示JavaScript数组的高级应用技巧,供读者参考学习。

数组基本操作示例


//数组的高级使用
 
var array = [10,12,20,30];
 
for(var index in array){
 console.log(array[index]);
}
 
//length 数组长度
 
for(var i = 0; i < array.length; i++){
 console.log(array[i]);
}
 
//数组添加新数据
 
array.push(1000);
 
array.push(2000);
 
array.push("hello world");
 
array.push({key:"jadeshu"});
 
console.log(array); //[10, 12, 20, 30, 1000, 2000, "hello world", {key:"jadeshu"}]
 
//数组删除最后一个数据
 
array.pop();
 
console.log(array); // [10, 12, 20, 30, 1000, 2000, "hello world"]
 
//查找数组里面值的索引
 
var idex = array.indexOf(2000);
 
console.log(idex); //5
 
//数组删除
 
//splice(开始索引,索引之后的个数)
 
var data = array.splice(2,3);
 
console.log(data); //[20, 30, 1000]
 
console.log(array); //[10, 12, 2000, "hello world"]

数组排序方法

首先介绍如何对数组元素进行排序,实现从大到小或从小到大的顺序排列。

排序代码实现


var array_num = [12,12,13,564,7,55,66];
 
//从小到大排序
 
array_num.sort(function (lhs,rhs) {
 
 if (lhs < rhs){
  return -1;
 }else if(lhs > rhs) {
  return 1;
 }else {
  return 0;
 }
})
 
console.log(array_num) // [7, 12, 12, 13, 55, 66, 564]
 
console.log("=======================");
 
array_num = [12,12,13,564,7,55,66];
 
//从大到小排序
 
array_num.sort(function (lhs,rhs) {
 
 if (lhs < rhs){
  return 1;
 }else if(lhs > rhs) {
  return -1;
 }else {
 return 0;
}
 
});
 
console.log(array_num) //[564, 66, 55, 13, 12, 12, 7]
 
console.log("=======================");

数组随机打乱

其次演示如何随机打乱一个数组的顺序。

随机打乱代码实现


array_num = [12,12,13,564,7,55,66];
 
array_num.sort(function () {
 
 if ( Math.random() < 0.5){
  return -1;
 }else {
  return 1;
 }
});
 
console.log(array_num); //[12, 12, 564, 13, 7, 66, 55] 随机
 
console.log("=======================");

生成指定范围随机整数

接着讲解如何编写程序,生成指定范围(如[10,100))内的随机整数。

随机整数生成代码实现


function random_int_num(start,end) {
 
 return Math.floor(start + (end - start) * Math.random());
 
}
 
console.log(random_int_num(10,100)); //69 随机

在线测试与扩展阅读

感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具:http://tools.jb51.net/code/HtmlJsRun测试上述代码运行效果。

更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript数组操作技巧总结》、《JavaScript遍历算法与技巧总结》、《javascript面向对象入门教程》、《JavaScript数学运算用法总结》、《JavaScript数据结构与算法技巧总结》及《JavaScript错误与调试技巧总结》

希望本文所述对大家JavaScript程序设计有所帮助。

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章